Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int main(){
- long long c,x,y,z,m,s,f,e,t;
- cin >> c >> x >> y >> z >> m >> s >> f >> e >> t;
- /*
- c-íåîáõîäèìîå ÷èñëî âàëþòû äëÿ ïîáåäû
- x-âìåñòèìîñòü áàçû
- ó-ñòîèìîñòü õðàíèëèùà
- z-âìåñòèìîñòü õðàíèëèùà
- m-÷åðåç ì ìèíóò ïðèâîçÿò s âàëþòû
- s-âàëþòà çà êàæäûå m ìèíóò
- f-ñòîèìîñòü îòðÿäà ïåõîòû
- e-êîëè÷åñòâî îòðÿäîâ âðàãîâ
- t-âðåìÿ íåîáõîäèìîå äëÿ òîãî, ÷òîáû äîáðàòüñÿ äî âðàãà*/
- long long needAm=0, resultOfWaiting=0, current=0, waitingTime=0, curAm=0,q, resultOfAttack=0;
- //åñëè òîëüêî æäàòü
- needAm = (c - x) / z;
- if ((c-x)%z!=0) needAm+1;
- while(curAm < needAm){
- waitingTime+=m;
- curAm+=(s+current)/y;
- current=(s+current)%y;
- if(curAm > needAm){
- q=(curAm-needAm)*y;
- current+=q;
- curAm=needAm;
- }
- if ((curAm*z+x)<current)
- current=curAm*z+x;
- }
- resultOfWaiting=waitingTime + (needAm*z+x-current)/s*m;
- if ((needAm*z+x-current)%s!=0) resultOfWaiting+=m;
- cout << "Waiting: " << resultOfWaiting << endl;
- //åñëè àòàêîâàòü
- q=(e+1)*f;
- curAm=0;
- needAm = (q - x) / z;
- if ((q-x)%z!=0) needAm+1;
- while(curAm < needAm){
- waitingTime+=m;
- curAm+=(s+current)/y;
- current=(s+current)%y;
- if(curAm > needAm){
- q=(curAm-needAm)*y;
- current+=q;
- curAm=needAm;
- }
- if ((curAm*z+x)<current){
- //Ó×ÒÈ ×ÒÎ ÌÎÆÍÎ ÏÎÊÓÏÀÒÜ ÎÒÐßÄ ÇÄÅÑÜ
- current=curAm*z+x;
- }
- }
- resultOfAttack=waitingTime+t+(needAm*z+x-current)/s*m;
- if ((needAm*z+x-current)%s!=0) resultOfAttack+=m;
- cout << "Attack: " << resultOfWaiting << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement