※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 27505번 문제인 천국의 계단이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/27505
27505번: 천국의 계단
각각 1, 2, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23의 높이를 가지는 단은 만들 수 없다. 따라서 만들 수 없는 단의 개수인 13을 출력한다.
www.acmicpc.net
높이가
먼저
아래는 제출한 소스코드이다.
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
ll gcd(ll x, ll y) {
if (y) return gcd(y, x % y);
return x;
}
ll N, A, B, AA, G;
ll cnt;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> N >> A >> B;
G = gcd(A, B);
AA = A / G;
for (ll b = 0; b < AA; b++) {
ll K = N - B * b;
if (K < 0) break;
cnt += K / A + 1;
}
cout << N - cnt + 1;
}
'BOJ' 카테고리의 다른 글
[BOJ 23128 // C++] Math (0) | 2024.03.25 |
---|---|
[BOJ 16894 // C++] 약수 게임 (0) | 2024.03.24 |
[BOJ 19576 // C++] 약수 (1) | 2024.03.22 |
[BOJ 13343 // C++] Block Game (0) | 2024.03.21 |
[BOJ 14905 // C++] 소수 4개의 합 (0) | 2024.03.20 |