반응형
코딩하기 전 생각하기
/*
나머지를 활용하자.
답을 n이라고 하자.
n을 각각 E S M의 길이로 나눈 나머지가 입력 받은 수들과 일치해야 한다.
*/
코드
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
int e, s, m, n = 1;
cin >> e >> s >> m;
while (1) {
if ( (n - e) % 15 == 0 && (n - s) % 28 == 0 && (n - m) % 19 == 0 )
break;
n++;
}
cout << n;
}
느낀점
문제 알고리즘 분류에 "나머지 정리"라는 단어 덕분에 힌트를 얻을 수 있었다. 이거 아니었으면 못 풀었을 것 같다.
n % 15 == e과 같은 코드를 먼저 생각했었는데 e가 15일 때는 답이 나올 수 없었다. (n - e) % 15 == 0로 코드를 바꿔주니까 통과할 수 있었다.
(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.
댓글 환영합니다!
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준/BOJ] 5355번 - 화성 수학 (C++) (0) | 2021.07.12 |
---|---|
[백준/BOJ] 2163번 - 초콜릿 자르기 (C++) (0) | 2021.07.12 |
[백준/BOJ] 1712번 - 손익분기점 (C++) (0) | 2021.07.11 |
[백준/BOJ] 2775번 - 부녀회장이 될테야 (C++) (0) | 2021.07.11 |
[백준/BOJ] 3052번 - 나머지 (C++) (0) | 2021.07.11 |
댓글