※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 24313번 문제인 알고리즘 수업 - 점근적 표기 1이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/24313
24313번: 알고리즘 수업 - 점근적 표기 1
f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다.
www.acmicpc.net
문제에서 요구하는 내용을 간단히 정리하면 다음과 같다:
주어진 f(n)과 c, n0에 대하여 "모든 n ≥ n0에 대하여 f(n) ≤ c × g(n)"가 성립한다면 1, 성립하지 않다면 0을 출력하시오.
주어진 변수들을 잘 읽어 위의 식이 성립하는지를 잘 판단하자. 특히 n=n0인 경우뿐만이 아닌 그보다 큰 모든 n에 대하여 성립해야 한다는 점에 유의하자.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
int a1, a0, c, n0; cin >> a1 >> a0 >> c >> n0;
cout << ((a1 * n0 + a0 <= c * n0) && (c - a1 >= 0));
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 18412 // C++] 文字列の反転 (Inversion of a String) (0) | 2022.08.31 |
---|---|
[BOJ 21347 // C++] Keyboardd (0) | 2022.08.30 |
[BOJ 2999 // C++] 비밀 이메일 (0) | 2022.08.28 |
[BOJ 5679 // C++] Hailstone Sequences (0) | 2022.08.28 |
[BOJ 2057 // C++] 팩토리얼 분해 (0) | 2022.08.28 |