Notice
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 테크톡
- sql error [936] [42000]: ora-00936
- oracle
- java크롤링
- unresolved compilation problems
- 이클립스무한로딩
- sql error [1] [23000]: ora-00001
- 이클립스로딩
- 메모리낭비적은string연산
- 오버로딩
- 오블완
- 우아한테크
- 이클립스로딩지연
- sql error [947] [42000]: ora-00947
- Java
- this
- Sequence
- 조건위치 효율성
- error페이지 설정
- 테이블복사생성
- 프로그래머스
- 이클립스느림
- this()
- ecleemma
- 티스토리챌린지
- select즐겨찾기
- 생성자오버로딩
- 다형성
- git
- 이클립스형광줄
코딩항해기
[프로그래머스/JAVA] 마지막 두 원소 본문
[문제 설명]
정수 리스트 num_list가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요.
[제한사항]
2 ≤ num_list의 길이 ≤ 10
1 ≤ num_list의 원소 ≤ 9
[코드]
class Solution {
public int[] solution(int[] num_list) {
int[] answer = new int[num_list.length+1];
for(int i=0;i<answer.length;i++){
if(i<num_list.length){
answer[i] = num_list[i];
}
else{
answer[i] = answer[i-1]>answer[i-2]? answer[i-1]-answer[i-2] : answer[i-1]*2;
}
}
return answer;
}
}
[수정해야할 점]
for문 안에 if문을 넣어서 마지막 값의 데이터를 넣었는데,
그냥 for문을 num_list.length길이만큼 돌리고,
마지막 else문이 반복문이 끝나고 실행되도록 짜면 더욱 간단한 문제였다.
넓게 내다보는 점을 연습해야겠다.
'problem solving > 코딩 테스트' 카테고리의 다른 글
[프로그래머스/JAVA] 가장 많이 받은 선물 (1) | 2024.07.05 |
---|---|
[프로그래머스/JAVA] 나이 출력 (0) | 2024.07.01 |
[프로그래머스][JAVA] 수 조작하기 (0) | 2024.06.25 |
[프로그래머스][JAVA] 카운트 업 (0) | 2024.06.23 |
[프로그래머스][JAVA] 글자 이어 붙여 문자 만들기 (0) | 2024.06.22 |