日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

230:Borrowers

發布時間:2025/6/16 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 230:Borrowers 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Borrowers


又因為輸出WA了一發。。。一定要看清楚輸出要求啊啊

#include<cstdio> #include<iostream> #include<map> #include<vector> #include<cstring> #include<algorithm> using namespace std; const int maxn = 10000; typedef pair<string,string>P; vector<P>books; map<string,int>pos; int bor[maxn],ret[maxn]; //bor標記書是否被借 ret記錄還的書的位置 int cmp(P a,P b){if(a.second != b.second) return a.second < b.second;return a.first < b.first; } int main(){string s,t;while(getline(cin,s) && s[0] != 'E'){size_t p1 = s.find('"',1),p2 = s.find("by ");books.push_back(make_pair('"'+s.substr(1,p1-1)+'"',s.substr(p2+3)));}sort(books.begin(),books.end(),cmp);for(int i = 0;i < books.size();i++){pos[books[i].first] = i; //記錄每本書的位置}int cnt = 0;while(cin>>s && s[0] != 'E'){if(s[0] == 'S'){sort(ret,ret + cnt); //放書之前拍下序后面移動的次數會少一些for(int i = 0;i < cnt;i++){int t = ret[i];bor[t] = 0;cout<<"Put "<<books[t].first<<' ';if(!t) cout<<"first\n";else{t--;while(t >= 0 && bor[t]) t--;if(t < 0) cout<<"first\n";else cout<<"after "<<books[t].first<<endl;}}cout<<"END\n"; //別忘了這個。。。cnt = 0;}else{getchar();getline(cin,t);if(s[0] == 'B') bor[pos[t]] = 1;if(s[0] == 'R') ret[cnt++] = pos[t];}}return 0; }

轉載于:https://www.cnblogs.com/JingwangLi/p/10202726.html

總結

以上是生活随笔為你收集整理的230:Borrowers的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。