2020-09-29
문제
예선 날짜가 다가오는데도 적당한 A번 문제를 생각하지 못한 출제진은
작년 전대프연 예선 A번을 응용해서 문제를 만들기로 했다.
이를 위해 사진 속 문제를 찾아본 출제진은
해당 문제가 2007학년도 6월 고등학교 1학년 전국연합학력평가 수리 영역 26번임을 알게 되었다.
시험지를 내려받고 문제들을 살펴보던 출제진은 아래와 같은 문제를 발견했다.
예상했겠지만,
여러분은 이제 위의 19번 문제 세 번째 줄에 등장하는 수
'1000'을 임의의 자연수로 바꾸었을 때
그에 해당하는 답을 출력하는 프로그램을 작성해야 한다.
입력
첫 번째 줄에 자연수 n (1 ≤ n ≤ 109)이 주어진다.
출력
첫 번째 줄에 19번 문제 세 번째 줄에 등장하는 수
'1000'을 자연수 n으로 바꾸었을 때 그에 해당하는 답의 번호를 출력한다.
즉, 1 이상 5 이하의 자연수 중 하나를 출력해야 한다.
소스코드
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int count = 1;
int change = -1;
for(int i = 1 ; i < n; i++) {
if(count <= 1 ) {
change *= -1;
}
count += change;
if(count >= 5) {
change *= -1;
}
//첫번째부터 5번쨰 손가락 까지는 하나씩 더해준다.
//손가락 번호가 5가 됬을때는 -1을 곱해 다시
//1이 되기 까지 곱해준다.
}
System.out.println(count);
출처 링크 : www.acmicpc.net/problem/17362