链接:https://ac.nowcoder.com/acm/contest/332/B
题意:
小j开始打工,准备赚钱买煤气灶。
第一天,小j的工资为n元,之后每天他的工资都比前一天多d元。
已知煤气灶需要m元,求小j最少工作几天才能买到煤气灶
思路:
题目给了一个最大可能天数,所以目的是考察二分,但是没有卡暴力。
但是因为要longlong,我有个int没看到,wa11发。。。
代码:
#include <bits/stdc++.h> using namespace std; typedef long long LL; int main() { LL n, m, d, x; scanf("%lld%lld%lld%lld", &n, &m, &d, &x); int day = 1; LL all = n; while (all < m) { n += d; all += n; day++; } printf("%lld ",day); return 0; }