資源限制 時間限制:1.0s 記憶體限制:256.0MB 問題描述 有n個人正在飯堂排隊買海北雞飯,每份海北雞飯要25元,奇怪的是,每個人手里只有一張鈔票(每張鈔票的面值為25、50、100元),而且飯堂阿姨一開始沒有任何零錢,請問飯堂阿姨能否給所有人找零(假設飯堂阿姨足夠聰明) 輸入格式 第一行一個整數n,表示排隊的人數,
接下來n個整數a[1],a[2],...,a[n],a[i]表示第i位學生手里鈔票的價值(i越小,在隊伍里越靠前) 輸出格式 輸出YES或者NO 樣例輸入 4
25 25 50 50 樣例輸出 YES 樣例輸入 2
25 100 樣例輸出 NO 樣例輸入 4
25 25 50 100 樣例輸出 YES 資料規模和約定 n不超過1000000 需要多種情況的考慮,即25,50和100元的三種情況,
1 #include<iostream> 2 //author:QIANG 3 using namespace std; 4 int main(){ 5 int n,s; 6 cin>>n; 7 int tf=0,f=0; 8 int flag=1; 9 for(int i=0;i<n;i++){ 10 cin>>s; 11 if(flag==1){ 12 if(s==25){ 13 tf++; 14 }else if(s==50){ 15 if(tf>0){ 16 tf--; 17 f++; 18 }else{ 19 flag=0; 20 } 21 }else{ 22 if(f>0){ 23 f--; 24 s=s-50; 25 } 26 if(s==50){ 27 if(tf>0){ 28 tf--; 29 }else{ 30 flag=0; 31 } 32 }else{ 33 if(tf>=3){ 34 tf=tf-3; 35 }else{ 36 flag=0; 37 } 38 } 39 } 40 } 41 } 42 if(flag==1){ 43 cout<<"YES"; 44 }else cout<<"NO"; 45 return 0; 46 }
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/63290.html
標籤:C++
上一篇:「C++ 篇」答應我,別再if/else走天下了可以嗎
下一篇:演算法訓練 字串比較
