Victor and Machine
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)
Total Submission(s): 176 Accepted Submission(s): 91
Problem Description
Victor has a machine. When the machine starts up, it will pop out a ball immediately. After that, the machine will pop out a ball every w seconds. However, the machine has some flaws, every time after x seconds of process the machine has to turn off for y seconds for maintenance work. At the second the machine will be shut down, it may pop out a ball. And while it's off, the machine will pop out no ball before the machine restart.
Now, at the 0 second, the machine opens for the first time. Victor wants to know when the n-th ball will be popped out. Could you tell him?
Now, at the 0 second, the machine opens for the first time. Victor wants to know when the n-th ball will be popped out. Could you tell him?
Input
The input contains several test cases, at most 100 cases.
Each line has four integers x, y, w and n. Their meanings are shown above。
1≤x,y,w,n≤100.
Each line has four integers x, y, w and n. Their meanings are shown above。
1≤x,y,w,n≤100.
Output
For each test case, you should output a line contains a number indicates the time when the n-th ball will be popped out.
Sample Input
2 3 3 3
98 76 54 32
10 9 8 100
Sample Output
10
2664
939
Source
傻逼模拟题
我做了半小时....
sssssad
1 /************************************************************************* 2 > File Name: code/bc/#52/1001.cpp 3 > Author: 111qqz 4 > Email: rkz2013@126.com 5 > Created Time: 2015年08月22日 星期六 18时51分44秒 6 ************************************************************************/ 7 8 #include<iostream> 9 #include<iomanip> 10 #include<cstdio> 11 #include<algorithm> 12 #include<cmath> 13 #include<cstring> 14 #include<string> 15 #include<map> 16 #include<set> 17 #include<queue> 18 #include<vector> 19 #include<stack> 20 #include<cctype> 21 #define y1 hust111qqz 22 #define yn hez111qqz 23 #define j1 cute111qqz 24 #define ms(a,x) memset(a,x,sizeof(a)) 25 #define lr dying111qqz 26 using namespace std; 27 #define For(i, n) for (int i=0;i<int(n);++i) 28 typedef long long LL; 29 typedef double DB; 30 const int inf = 0x3f3f3f3f; 31 const int N=1E6+7; 32 int main() 33 { 34 #ifndef ONLINE_JUDGE 35 freopen("in.txt","r",stdin); 36 #endif 37 int x,y,w,n; 38 while (scanf("%d%d%d%d",&x,&y,&w,&n)!=EOF){ 39 int num = 1; 40 int cnt; 41 int q; 42 bool on = true; 43 bool flag = false; 44 int t = 0; 45 while (t<N&&!flag){ 46 if (num==n) { 47 cout<<t<<endl; 48 flag = true; 49 break; 50 } 51 cnt = t+x; 52 q = 0; 53 while (t<cnt){ 54 q++; 55 t++; 56 if (q%w==0){ 57 // cout<<"aaat:"<<t<<endl; 58 num++; 59 } 60 if (num == n){ 61 cout<<t<<endl; 62 flag = true; 63 break; 64 } 65 } 66 on = false; 67 t = t + y; 68 on = true; 69 num++; 70 if (num==n){ 71 cout<<t<<endl; 72 flag = true; 73 } 74 75 } 76 77 } 78 79 80 81 82 83 #ifndef ONLINE_JUDGE 84 fclose(stdin); 85 #endif 86 return 0; 87 }