백준알고리즘
https://www.acmicpc.net/problem/2839
수학적 계산식.
5로 나누었을 때 0 일 경우에는 바로 결과 값이 도출되지만
숫자가 18일 경우 % 3으로 했을 때 0이 되지만 3을 뺀 이후 % 5 를 하면 0이 됨을 알 수 있다.
식 순서를 % 5, - 3을 반복하면서 계산하면 정답이 도출된다.
public class Test { public static int count; public static void main(String[] args) { Scanner scan = new Scanner(System.in); count = Integer.parseInt(scan.nextLine().trim()); calculate(count); } public static void calculate(int value) { int total = 0; while(value > 0) { if(value == 0) { System.out.println(total); break; } if(value % 5 == 0) { total += value / 5; value = 0; break; } if(value - 3 >= 0) { value -= 3; total++; continue; } else { value = -1; break; } } if(value == 0) { System.out.println(total); } else { System.out.println(-1); } } }
'알고리즘 및 자료구조 > 문제' 카테고리의 다른 글
백준알고리즘 1159번 농구 경기 (0) | 2018.04.24 |
---|---|
백준알고리즘 1152번 단어의 개수 (0) | 2018.04.24 |
백준알고리즘 1546번 평균 (0) | 2018.04.23 |
백준알고리즘 9461번 파도반 수열 (0) | 2018.04.23 |
백준알고리즘 2579번 계단 오르기 (0) | 2018.04.23 |