티스토리 뷰
같은 조의 팀장님의 방식을 따라하기로 했다.
생각하는 로직을 차례대로 풀어서 작성하는 것이다.
하면서 중간 중간에 로직이 수정되면 같이 수정해줬다.
public class exam07absolute {
// 어떤 정수들이 있습니다.
// 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은
// 불리언 배열 signs가 매개변수로 주어집니다.
// 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요.
public static void main(String[] args) {
int[] absolutes = new int[]{4,7,12};
boolean[] signs = new boolean[]{true,false,true};
int[] temp = new int[absolutes.length];
int answer = 0;
//1. for문으로 absolutes와 signs을 추출한다.
//2. signs가 false이면 -로 변환한다.
//3. absolutes와 signs를 차례대로 합쳐 temp에 넣어주고, parseInt로 숫자를 완성한다.
//4. for문으로 answer에 answer를 더한다.
for(int i=0; i<absolutes.length; i++) {
if (signs[i]) {
temp[i] = absolutes[i];
}else {
temp[i] = Integer.parseInt("-" + absolutes[i]);
}
}
for (int j=0; j<temp.length; j++) //중괄호를 안 해도 된다.
answer += temp[j];
System.out.println(answer);
return ;
}
}
오 쉽네, 하면서 풀었는데, 다른 사람의 풀이를 보고 나니 내가 얼마나 허접했는가 생각된다.
아래처럼 -1을 곱해주면 되는 건데, 굳이 -1을 문자열에 더해서 파스인트를 하다니...!
생각을 좀더 단순하게 할 필요가 있는 것 같다.
지금은 왠지 아는 걸 다 써먹어 보려는 단계인 것 같다...
class Solution {
public int solution(int[] absolutes, boolean[] signs) {
int answer = 0;
for (int i=0; i<signs.length; i++)
answer += absolutes[i] * (signs[i]? 1: -1);
return answer;
}
}
아래 코드는 index out of bounds exception이 발생한다. 왤까?
for (int i:absolutes) {
if (signs[i]) {
temp[i] = absolutes[i];
} else {
temp[i] = Integer.parseInt("-" + absolutes[i]);
}
}
'TIL' 카테고리의 다른 글
| [코딩테스트] 전화번호 마스킹 처리하기 (0) | 2022.05.14 |
|---|---|
| [코딩테스트] 평균 구하기 (0) | 2022.05.14 |
| 두 정수 사이의 합 구하기 (0) | 2022.05.13 |
| 가운데 글자 가져오기 (0) | 2022.05.13 |
| 자바 - 단항연산자 (0) | 2022.05.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- OneToMany
- ORM
- 항해99
- toCharArray
- ManyToMany
- 제어자
- DI
- 배열
- GIT
- 몽고db
- bean
- clean-up policy
- jinja2
- 패키지
- overfatching
- ResetController
- 단항연산자
- MVC
- 서버환경
- Java
- controller
- ManyToOne
- AfterEach
- 상속
- 고민
- 임포트
- 스프링부트
- AssertJ
- 자바의정석
- IOC
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
글 보관함
