문제설명

 

소스코드

#include <iostream>
using namespace std;
int main()
{
	int a0, a1, c, n0;
	cin >> a1 >> a0;
	cin >> c;
	cin >> n0;
	int fn = a1 * n0 + a0;
	int gn = c * n0;
	(fn <= gn) && (a1 <= c) ? cout << 1 : cout << 0;
}

 

설명

  • f(n) = a1 * n + a0
  • g(n) =  c*n
  • f(n) ≤ g(n)
  • n ≥ n0
  • 중요한 것은 a0가 음수일 때도 생각해야한다는 것이다.
  • 따라서 f(n) ≤ g(n)과 추가적으로 a1 ≤ c도 고려해야한다. 그러면 a0 음수이든 말든 조건을 보장해주기 때문이다.