题目描述:
甲、乙二人同一天从北京出发到某地,甲每天固定行x公里,乙第一天行y公里,以后每天比前一天多行z公里,乙在出发第几天可以超过甲?若50天内不能超过,输出“NO”。
输入格式:
一行,三个整数分别表示x,y,z,三个整数间以空格隔开。
输出格式:
输出每一天甲与乙的总路程,具体格式参见样例输出,每部分间以一个空格隔开,NO两个字母为大写。
最后一行一个整数或“NO”,表示在这一天超越的路人甲,或不能超越。
样例输入:
样例1: 100 70 3样例2: 1000 5 15
样例输出:
样例1: NO.1 100 70 NO.2 200 143 NO.3 300 219 NO.4 400 298 NO.5 500 380 NO.6 600 465 NO.7 700 553 NO.8 800 644 NO.9 900 738 NO.10 1000 835 NO.11 1100 935 NO.12 1200 1038 NO.13 1300 1144 NO.14 1400 1253 NO.15 1500 1365 NO.16 1600 1480 NO.17 1700 1598 NO.18 1800 1719 NO.19 1900 1843 NO.20 2000 1970 NO.21 2100 2100 NO.22 2200 2233 22样例2: NO.1 1000 5 NO.2 2000 25 NO.3 3000 60 NO.4 4000 110 NO.5 5000 175 NO.6 6000 255 NO.7 7000 350 NO.8 8000 460 NO.9 9000 585 NO.10 10000 725 NO.11 11000 880 NO.12 12000 1050 NO.13 13000 1235 NO.14 14000 1435 NO.15 15000 1650 NO.16 16000 1880 NO.17 17000 2125 NO.18 18000 2385 NO.19 19000 2660 NO.20 20000 2950 NO.21 21000 3255 NO.22 22000 3575 NO.23 23000 3910 NO.24 24000 4260 NO.25 25000 4625 NO.26 26000 5005 NO.27 27000 5400 NO.28 28000 5810 NO.29 29000 6235 NO.30 30000 6675 NO.31 31000 7130 NO.32 32000 7600 NO.33 33000 8085 NO.34 34000 8585 NO.35 35000 9100 NO.36 36000 9630 NO.37 37000 10175 NO.38 38000 10735 NO.39 39000 11310 NO.40 40000 11900 NO.41 41000 12505 NO.42 42000 13125 NO.43 43000 13760 NO.44 44000 14410 NO.45 45000 15075 NO.46 46000 15755 NO.47 47000 16450 NO.48 48000 17160 NO.49 49000 17885 NO.50 50000 18625 NO
时间限制: 1000ms
空间限制: 128MB
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){int a,b,c,s=0,s1=0,x=1;cin>>a>>b>>c;s=a;s1=b;if(s1>s){cout<<"NO.1 "<<s<<" "<<s1;return 0;}cout<<"NO.1 "<<s<<" "<<s1<<endl;for(int i=2;i<=50;i++){s=s+a;s1=s1+b+c*(i-1);if(s1>s){cout<<"NO."<<i<<" "<<s<<" "<<s1<<endl<<i;return 0;}cout<<"NO."<<i<<" "<<s<<" "<<s1<<endl;}cout<<"NO";return 0;
}