/*#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int ile;
unsigned long long suma = 0, minNieparzysta = 18446744073709551615, temp;
scanf("%llu", &ile);
while (ile--){
scanf("%llu", &temp);
if (minNieparzysta > temp && temp%2!=0) minNieparzysta = temp;
suma += temp;
}
if (suma % 2 != 0)suma -= minNieparzysta;
if (suma % 2 != 0 || suma==0) printf("NIESTETY");
else printf("%llu",suma);
}
*/
#include <iostream>
#include <stdio.h>
using namespace std;
class ziema{
public:
long wysokoscTrawy;
long wzrost;
ziema(): wysokoscTrawy(0){}
void rosnij(){
wysokoscTrawy+=wzrost;
}
long koszenie(long dojakiejWyskosci){
// int wysokosc=wysokoscTrawy;
long wagaTrawy = wysokoscTrawy-dojakiejWyskosci;
wysokoscTrawy=dojakiejWyskosci;
if(wagaTrawy>=0)return wagaTrawy;
else return 0;
}
};
int main()
{
long liczbaPowieszchni, liczbaKoszen,temp,trawaPoSkoszeniu,wagaSkoszonejTrway=0;
// cin>>liczbaPowieszchni;
// cin>>liczbaKoszen;
scanf("%ld",&liczbaPowieszchni);
scanf("%ld",&liczbaKoszen);
ziema powierzchnia[liczbaPowieszchni];
for(long i=0;i<liczbaPowieszchni;i++){
//cin>>temp;
scanf("%ld",&temp);
powierzchnia[i].wzrost=temp;
}
//cin>>temp;
scanf("%ld",&temp);
for(long j=1,k=0;k<liczbaKoszen;j++){
for(long i=0;i<liczbaPowieszchni;i++){
powierzchnia[i].rosnij();
}
//cout<<"\tj= "<<j<<" temp= "<<temp<<endl;
if(temp!=j)continue;
k++;
// cin>>trawaPoSkoszeniu;
// cin>>temp;
scanf("%ld",&trawaPoSkoszeniu);
scanf("%ld",&temp);
for(long i=0;i<liczbaPowieszchni;i++){
wagaSkoszonejTrway+=powierzchnia[i].koszenie(trawaPoSkoszeniu);
//cout<<'\n'<<powierzchnia[i].wysokoscTrawy;
}
//cout<<'\n';
//cout<<wagaSkoszonejTrway<<'\n';
printf("%lu\n",wagaSkoszonejTrway);
wagaSkoszonejTrway=0;
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | /*#include <iostream> #include <stdio.h> using namespace std; int main() { int ile; unsigned long long suma = 0, minNieparzysta = 18446744073709551615, temp; scanf("%llu", &ile); while (ile--){ scanf("%llu", &temp); if (minNieparzysta > temp && temp%2!=0) minNieparzysta = temp; suma += temp; } if (suma % 2 != 0)suma -= minNieparzysta; if (suma % 2 != 0 || suma==0) printf("NIESTETY"); else printf("%llu",suma); } */ #include <iostream> #include <stdio.h> using namespace std; class ziema{ public: long wysokoscTrawy; long wzrost; ziema(): wysokoscTrawy(0){} void rosnij(){ wysokoscTrawy+=wzrost; } long koszenie(long dojakiejWyskosci){ // int wysokosc=wysokoscTrawy; long wagaTrawy = wysokoscTrawy-dojakiejWyskosci; wysokoscTrawy=dojakiejWyskosci; if(wagaTrawy>=0)return wagaTrawy; else return 0; } }; int main() { long liczbaPowieszchni, liczbaKoszen,temp,trawaPoSkoszeniu,wagaSkoszonejTrway=0; // cin>>liczbaPowieszchni; // cin>>liczbaKoszen; scanf("%ld",&liczbaPowieszchni); scanf("%ld",&liczbaKoszen); ziema powierzchnia[liczbaPowieszchni]; for(long i=0;i<liczbaPowieszchni;i++){ //cin>>temp; scanf("%ld",&temp); powierzchnia[i].wzrost=temp; } //cin>>temp; scanf("%ld",&temp); for(long j=1,k=0;k<liczbaKoszen;j++){ for(long i=0;i<liczbaPowieszchni;i++){ powierzchnia[i].rosnij(); } //cout<<"\tj= "<<j<<" temp= "<<temp<<endl; if(temp!=j)continue; k++; // cin>>trawaPoSkoszeniu; // cin>>temp; scanf("%ld",&trawaPoSkoszeniu); scanf("%ld",&temp); for(long i=0;i<liczbaPowieszchni;i++){ wagaSkoszonejTrway+=powierzchnia[i].koszenie(trawaPoSkoszeniu); //cout<<'\n'<<powierzchnia[i].wysokoscTrawy; } //cout<<'\n'; //cout<<wagaSkoszonejTrway<<'\n'; printf("%lu\n",wagaSkoszonejTrway); wagaSkoszonejTrway=0; } } |
English