immccarthy   2년 전

마지막 줄, N 값 9가 바로 입력이 안되고, 입력대기가 생기면서 딜레이가 됩니다.

이유를 모르겠습니다. 도와주세요~

5
5 50 50 70 80 100
7 100 95 90 80 70 60 50
3 70 90 80
3 70 90 81
9 100 99 98 97 96 95 94 93 91
A
5
B
70
40.000%
A
7
B
77
57.143%
A
3
B
80
33.333%
A
3
B
80
66.667%
A
(여기 에 입력 대기가 생기면서 Enter를 치면 다시 제대로 넘어갑니다)
9
B
95
55.556%

dldyddlwl   2년 전

엔터를 눌러야 입력이 완료되기 때문입니다.

사실 너무 당연히 생각했던 것이라 어색하실 수도 있을 것 같습니다만,

그저 아래와 같이 한 개의 숫자를 받는다고 할 때, 엔터를 치지 않으면 다음으로 넘어가지 않지요.

immccarthy   2년 전

댓글 감사합니다.

제가 아직 이해가 안되서 그러는데요,

엔터를 쳐야 입력이 완료되었다고 하셨는데요, 엔터를 치고 나서야 N행의 마지막줄 값이 들어갔습니다.

이 뜻을 제가 이해하기로는 9라는 마지막 N행 숫자가 들어가기전에 입력대기가 걸렸다는 걸로 이해가 되는데요, 아닌가요?

C 값이 5이고, 4번째 N 줄까지는 잘 되고, 마지막 5번째 N을 실행 할 때 걸린다는게 이해가 안됩니다.

1~5번째의 N행의 실행 코드는 같은 반복문을 돌렸는데 말이죠.


그러고 말씀하신것 처럼, 제가 이걸 C값을 4 나 3으로 바꿔도,

마지막 전의 N줄 값까지는 잘 나오는데요, 마지막 N줄 값은 똑같이 엔터를 쳐야 넘어가더라구요.

아, 그리고 제가 알기론 Scanner.nextInt()는 줄 바뀜 과 공백을 인식해서 입력을 구분하는 걸로 알고 있습니다.

BufferedReader 같은 경우는 줄 바뀜은 인식하나 공백을 인식 못해서 StringTokenizer와 같이 쓰는 걸로 알고 있습니다.


댓글 감사합니다, 아직 제가 이해력이 부족해서 말씀하신 내용을 다 알아듣지 못하였습니다.

immccarthy   2년 전

무슨 말씀이신지 이해 했습니다. 감사합니다.

댓글을 작성하려면 로그인해야 합니다.