백준/15001 - 20000

[백준] 17362번 : 수학은 체육과목 입니다2(JAVA)

lms0806 2021. 7. 20. 18:45
728x90
반응형

https://www.acmicpc.net/problem/17362

 

17362번: 수학은 체육과목 입니다 2

첫 번째 줄에 19번 문제 세 번째 줄에 등장하는 수 '1000'을 자연수 n으로 바꾸었을 때 그에 해당하는 답의 번호를 출력한다. 즉, 1 이상 5 이하의 자연수 중 하나를 출력해야 한다.

www.acmicpc.net

풀이

손을 보면 8번 움직인 후 다시 처음부터 반복되는 걸로 알 수 있습니다.

즉, 입력받은 수를 8로 나눈 나머지로 해도 똑같은 결과가 나온다는걸 알 수 있습니다.

1 ~ 5 중 수를 선택해서 출력해야 하므로

 

입력 받은 수를 8로 나눈 나머지가 0, 7, 6인 경우 1 ~ 5 중 1가지 수를 출력해주고 아닌 경우 해당 수를 출력해주면 됩니다.

0인경우 8번을 누르므로 위 사진을 보면 2을 선택하면 된다는걸 알 수 있습니다.

이와 같은 방법으로 7 -> 3, 6 -> 4를 해주면됩니다.

 

소스코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws IOException{
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
		
		long answer = Long.parseLong(br.readLine()) % 8;
		
		System.out.print(answer == 0 ? 2 : answer == 6 ? 4 : answer == 7 ? 3 : answer);
	}
}
728x90
반응형