쉬운 자바 코딩 문제..
저는 이번에 처음 자바에 접하게된 학생인데
안풀리는 문제가 하나있네요..ㅠ
시퀀스가 n 인 range 가 k 와 k+n 이고 k 는 랜덤한 숫자인데
여기서 n+1 이없어요..
예를들어서 input 이 17 19 18 12 13 15 16 이라면
12 13 15 16 17 18 19 로 순서대로 정렬되고
output 이 14가 나와야하는데..
이코드 쉬워보이는데 어떻게 짤까요?
안풀리는 문제가 하나있네요..ㅠ
시퀀스가 n 인 range 가 k 와 k+n 이고 k 는 랜덤한 숫자인데
여기서 n+1 이없어요..
예를들어서 input 이 17 19 18 12 13 15 16 이라면
12 13 15 16 17 18 19 로 순서대로 정렬되고
output 이 14가 나와야하는데..
이코드 쉬워보이는데 어떻게 짤까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
12년 전
음 인풋숫자중에 min값과 max값 두개를 구한 다음에.
min = a, max = b, k개의 인풋 배열을 x[k]라 칩시다.
그리고 for(int i = a; i < b; i++) 로 포문 안에
인풋값들을 또 포문 돌려서 for ( int j = 0; j < k; j++) 로 포문 돌려서
그 안에 if 문으로 비교하면될거같네요
소스 :
output 배열을 output[k], output값을 outputValue라 하면
for (int i = a; i<b; i++){
for(int j = 0; j<k; j++){
if(i == x[k]){
output[i-a] = i; // 배열 순서대로 정렬해서 넣어줌
continue; // 빈칸이 없으므로 다음으로 넘어감.
}else if(i != x[k] && j == k-1)
outputValue = i; //끝까지 포문 돌렸는데 일치 값이 없을 때 outputValue
}
}
}
이런식으로 짜주면 될거같네요
min = a, max = b, k개의 인풋 배열을 x[k]라 칩시다.
그리고 for(int i = a; i < b; i++) 로 포문 안에
인풋값들을 또 포문 돌려서 for ( int j = 0; j < k; j++) 로 포문 돌려서
그 안에 if 문으로 비교하면될거같네요
소스 :
output 배열을 output[k], output값을 outputValue라 하면
for (int i = a; i<b; i++){
for(int j = 0; j<k; j++){
if(i == x[k]){
output[i-a] = i; // 배열 순서대로 정렬해서 넣어줌
continue; // 빈칸이 없으므로 다음으로 넘어감.
}else if(i != x[k] && j == k-1)
outputValue = i; //끝까지 포문 돌렸는데 일치 값이 없을 때 outputValue
}
}
}
이런식으로 짜주면 될거같네요
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
채택
답변대기
답변대기
답변대기
답변대기
채택
채택
답변대기
답변대기
답변대기
채택