[C++][λ°±μ€|BOJ][μκ°λ³΅μ‘λ] 24313λ² - μκ³ λ¦¬μ¦ μμ (μ κ·Όμ νκΈ° 1)
λ¬Έμ
μ€λλ μμ€μ΄λ μ κ·Όμ νκΈ° μμ μ‘°κ΅λ₯Ό νκ³ μλ€. μλΉ κ° μμ ν λ΄μ©μ νμλ€μ΄ μ μ΄ν΄νλμ§ λ¬Έμ λ₯Ό ν΅ν΄μ νμΈν΄λ³΄μ.
μκ³ λ¦¬μ¦μ μμ μκ°μ λνλ΄λ O-νκΈ°λ²(λΉ -μ€)μ λ€μκ³Ό κ°μ΄ μ μνμ.
O(g(n)) = {f(n) | λͺ¨λ n β₯ n0μ λνμ¬ f(n) β€ c Γ g(n)μΈ μμ μμ cμ n0κ° μ‘΄μ¬νλ€}
μ΄ μ μλ μ€μ O-νκΈ°λ²(https://en.wikipedia.org/wiki/Big_O_notation)κ³Ό λ€λ₯Ό μ μλ€.
ν¨μ f(n) = a1n + a0, μμ μ μ c, n0κ° μ£Όμ΄μ§ κ²½μ° O(n) μ μλ₯Ό λ§μ‘±νλμ§ μμ보μ.
μ λ ₯
첫째 μ€μ ν¨μ f(n)μ λνλ΄λ μ μ a1, a0κ° μ£Όμ΄μ§λ€. (0 β€ |ai| β€ 100)
λ€μ μ€μ μμ μ μ cκ° μ£Όμ΄μ§λ€. (1 β€ c β€ 100)
λ€μ μ€μ μμ μ μ n0κ° μ£Όμ΄μ§λ€. (1 β€ n0 β€ 100)
μΆλ ₯
f(n), c, n0κ° O(n) μ μλ₯Ό λ§μ‘±νλ©΄ 1, μλλ©΄ 0μ μΆλ ₯νλ€.
μμ μ λ ₯ 1
7 7 8 1
μμ μΆλ ₯ 1
0
f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1μ΄λ€. f(1) = 14, c Γ g(1) = 8μ΄λ―λ‘ O(n) μ μλ₯Ό λ§μ‘±νμ§ λͺ»νλ€.
μμ μ λ ₯ 2
7 7 8 10
μμ μΆλ ₯ 2
1
f(n) = 7n + 7, g(n) = n, c = 8, n0 = 10μ΄λ€. λͺ¨λ n β₯ 10μ λνμ¬ 7n + 7 β€ 8n μ΄λ―λ‘ O(n) μ μλ₯Ό λ§μ‘±νλ€.
O(g(n)) = {f(n) | λͺ¨λ n ≥ n0μ λνμ¬ f(n) ≤ c × g(n)μΈ μμ μμ cμ n0κ° μ‘΄μ¬νλ€}
f(n) ≤ c*g(n) μ λ§μ‘±νλ©΄ λλ€.
ν΄λΉ μμ μ 리νλ©΄ λ€μκ³Ό κ°μ λͺ¨μμ΄ λλ€.
μ λΆλ±μμ΄ νμ μ°Έμ΄ λκΈ° μν΄μλ a1-cκ° 0μ΄κ±°λ μμμ΄μ΄μΌ νλ€.
μ΄λ a1μ΄ cλ³΄λ€ μκ±°λ κ°μμΌλ‘ νμν μ μλ€.
#include <iostream>
int main() {
int a0, a1, c, n;
std::cin >> a1 >> a0;
std::cin >> c;
std::cin >> n;
if (a1 * n + a0 <= c * n && a1 <= c) {
std::cout << 1;
}
else std::cout <<0;
}
λ²μ 쑰건μ μΆκ°νμ§ μκ³ , a1 * n + a0 <= cλ§ μμ±ν μ μ€λ΅μΌλ‘ μ²λ¦¬λλ€.