열어보며
지금까지와는 다르게, 테스트 횟수를 따로 정수로 입력받지 않고 마지막 줄에 '0 0'을 입력받으면 테스트케이스 A,B 입력을 종료하도록 문제는 요구한다.
핵심
- 테스트횟수가 입력으로 주어지지 않기에 미리 반복횟수를 미리 정의해둘 수 없다.
- 따라서 for이 아니라 while을 활용해 조건을 충족하면 반복을 탈출하도록 break를 설정한다.
- 하나의 while 내에 입력/처리/출력을 모두 수행한다면 입력 후, 출력 전에 break를 배치한다.
풀이
- A,B를 할당 받을 1차원 리스트를 미리 생성해둔다.
- 이후 while에서 매 반복마다 리스트의 같은 저장공간을 indexing할 예정이므로 단 두개의 할당 공간으로 충분하다.
- 반복횟수가 미리 주어지는 문제가 아니므로, 한줄마다 종료 판별을 시행해주어야 한다.
사전에 리스트의 크기를 예측할 수 없으므로 업데이트 방식을 사용할 수 밖에 없기도 하다.
- while을 무한히 반복하도록 조건을 걸어두고,
ABlist에 입력받은 A,B가 둘다 0일 경우 반복을 탈출하도록 break 조건을 while 내에서 입력 후, 출력 전에 배치해둔다.
