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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

Codeforces Round #304 C(Div. 2)(模拟)

發(fā)布時間:2025/6/17 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Codeforces Round #304 C(Div. 2)(模拟) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目鏈接:?

http://codeforces.com/problemset/problem/546/C

?

題意:

總共有n張牌,1手中有k1張分別為:x1, x2, x3, ..xk1,2手中有k2張,分別為:y1, y2, ...yk2;(n<=10&&k1+k2==n,所有牌的數(shù)字都不同);

依次比較x1, y1的大小,若x1>y1,依次將x1, y1加入x牌最底下;反之則將y1,x1依次加入y牌最底下;直至有方的牌輸完為止;輸出總共游戲的步數(shù)和贏方;

如果兩方都不能贏,則輸出-1;

?

思路:直接用棧模擬,關鍵的地方是判斷兩方都不能贏的情況,判斷方法有兩種:

其一是設一個足夠大的數(shù),超過這個步數(shù)還沒有分出輸贏情況的話則可以認定

兩方都不能贏,因為n<=10,如果能分出輸贏的話則500步以內(nèi)一定會出結果的!

另一種方法是判斷當前狀態(tài)之前是否出現(xiàn)過,若出現(xiàn)過,則其一定不能分出輸贏!會死循環(huán)!

至于如何判斷是否出現(xiàn)過,可以將每個狀態(tài)都存入一個string數(shù)組中,再將當當前狀態(tài)與之對比,若出現(xiàn)過,則平局;

?

代碼分別如下:

方法1:

1 #include<bits/stdc++.h> 2 #define MAXN 10000 3 #define MAX 1000000000 4 #define eps 1e-6 5 #define ll long long 6 using namespace std; 7 8 int main(void) 9 { 10 queue<int> stk1, stk2; 11 string str1[MAXN], str2[MAXN]; 12 int n, a, b, ans=0; 13 cin >> n; 14 cin >> a; 15 for(int i=0; i<a; i++) 16 { 17 int x; 18 cin >> x; 19 stk1.push(x); 20 } 21 cin >> b; 22 for(int i=0; i<b; i++) 23 { 24 int x; 25 cin >> x; 26 stk2.push(x); 27 } 28 int cnt=0, flag; 29 while(1) 30 { 31 int x=stk1.front(), y=stk2.front(); 32 if(x>y) //****如果x>y,將y, x依次從隊尾加入stk1隊列,并將stk2,stk1隊首元素y, x拋掉; 33 { 34 stk1.push(y); 35 stk1.push(x); 36 stk1.pop(); 37 stk2.pop(); 38 } 39 else //****如果x<y,將x, y依次從隊尾加入stk2隊列,并將stk2, stk1隊首元素y, x拋掉; 40 { 41 stk2.push(x); 42 stk2.push(y); 43 stk2.pop(); 44 stk1.pop(); 45 } 46 cnt++; 47 if(stk1.empty()) //****隊列stk1為空,即2贏了 48 { 49 cout << cnt << " " << "2" << endl; 50 return 0; 51 } 52 if(stk2.empty()) //****隊列stk2為空,即1贏了 53 { 54 cout << cnt << " " << "1" << endl; 55 return 0; 56 } 57 if(cnt>500) break; //****如果步數(shù)大于500還沒分輸贏,即可判平局 58 } 59 cout << "-1" << endl; 60 return 0; 61 }

?

方法2:

1 #include<bits/stdc++.h> 2 #define MAXN 10000 3 #define MAX 1000000000 4 #define eps 1e-6 5 #define ll long long 6 using namespace std; 7 8 int main(void) 9 { 10 queue<int> stk1, stk2; 11 string str1[MAXN], str2[MAXN]; 12 int n, a, b, ans=0; 13 cin >> n; 14 cin >> a; 15 for(int i=0; i<a; i++) 16 { 17 int x; 18 cin >> x; 19 stk1.push(x); 20 } 21 cin >> b; 22 for(int i=0; i<b; i++) 23 { 24 int x; 25 cin >> x; 26 stk2.push(x); 27 } 28 int cnt=0, flag; 29 while(1) 30 { 31 int low1[MAXN], low2[MAXN], k1=0, k2=0; 32 while(!stk1.empty()) //**將stk1存入string數(shù)組中 33 { 34 low1[k1++]=stk1.front(); 35 stk1.pop(); 36 } 37 for(int i=0; i<k1; i++) 38 { 39 stk1.push(low1[i]); 40 } 41 for(int i=0; i<k1; i++) 42 { 43 str1[cnt]+=to_string(low1[i]); 44 } 45 while(!stk2.empty()) //****將stk2存入string數(shù)組中 46 { 47 low2[k2++]=stk2.front(); 48 stk2.pop(); 49 } 50 for(int i=0; i<k2; i++) 51 { 52 stk2.push(low2[i]); 53 } 54 for(int i=0; i<k2; i++) 55 { 56 str2[cnt]+=to_string(low2[i]); 57 } 58 for(int i=0; i<cnt; i++) //***判斷當前狀態(tài)是否出現(xiàn)過,若出現(xiàn)過,則平局 59 { 60 if(str1[i]==str1[cnt]&&str2[i]==str2[cnt]) 61 { 62 cout << "-1" << endl; 63 return 0; 64 } 65 } 66 int x=stk1.front(), y=stk2.front(); 67 if(x>y) //****如果x>y,將y, x依次從隊尾加入stk1隊列,并將stk2,stk1隊首元素y, x拋掉; 68 { 69 stk1.push(y); 70 stk1.push(x); 71 stk1.pop(); 72 stk2.pop(); 73 } 74 else //****如果x<y,將x, y依次從隊尾加入stk2隊列,并將stk2, stk1隊首元素y, x拋掉; 75 { 76 stk2.push(x); 77 stk2.push(y); 78 stk2.pop(); 79 stk1.pop(); 80 } 81 cnt++; 82 if(stk1.empty()) //****隊列stk1為空,即2贏了 83 { 84 flag=2; 85 break; 86 } 87 if(stk2.empty()) //****隊列stk2為空,即1贏了 88 { 89 flag=1; 90 break; 91 } 92 } 93 cout << cnt << " " << flag << endl; 94 return 0; 95 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/geloutingyu/p/5897305.html

總結

以上是生活随笔為你收集整理的Codeforces Round #304 C(Div. 2)(模拟)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 玩日本老头很兴奋xxxx | 国产精品人人妻人人爽人人牛 | 亚洲熟女乱色一区二区三区久久久 | 男人深夜网站 | 四川少妇xxx奶大xxx | 人与动物黄色片 | 日韩夜夜操 | 久草加勒比 | 日韩精品一区二区三区 | 亚洲啪av永久无码精品放毛片 | 91porn九色| 印度午夜性春猛xxx交 | 久久久久久欧美精品se一二三四 | 国产绳艺sm调教室论坛 | 一区二区三区在线观看视频 | 91猎奇在线观看 | 又色又爽又高潮免费视频国产 | 99re这里都是精品 | 在线观看二区 | 精品国产乱码久久久久久牛牛 | 久久久久久久久久网站 | 97视频成人| 亚洲精品一区二区三区中文字幕 | 色老板av| 看了让人下面流水的视频 | 日韩精品国产精品 | 国产激情精品一区二区三区 | 日韩综合另类 | 成人在线观看小视频 | 男人的天堂av网站 | 亚洲一区二区三区国产 | 97超在线 | 国产午夜精品无码 | 亚洲一区二区三区观看 | 永久av网站 | 国产精品一区二区三区高潮 | 99视频这里有精品 | 一卡二卡国产 | 古代黄色一级片 | 欧美做受xxxxxⅹ性视频 | 在线91观看 | 不卡黄色 | 日韩大片免费 | 尤物综合网 | 国产精品夜色一区二区三区 | 久久在线视频 | 欧美日韩在线播放三区四区 | 蜜臀视频在线播放 | 一出一进一爽一粗一大视频 | 成年人视频免费看 | 一对一色视频聊天a | 亚洲精品久久久久av无码 | 日韩黄色视屏 | 果冻av在线| 欧美国产日韩一区二区 | 向日葵视频在线 | 色婷婷91| 爱爱视频久久 | 无码人妻精品一区二区三区66 | 99国内揄拍国内精品人妻免费 | 男人和女人日批视频 | 操干网 | www.4虎| 亚洲色图28p | 国产对白自拍 | 亚洲一区在线视频观看 | av专区在线| 亚洲第一成年人网站 | 国产亚洲女人久久久久毛片 | 成人午夜视频在线观看 | 老司机成人网 | 国产福利小视频在线 | 欧美日韩在线一区二区三区 | 国产中文字幕网 | 91 在线观看 | 四虎在线影院 | 天天操天天看 | 色阁av| 一二三四区视频 | 精品免费视频 | 毛片免费在线观看视频 | 男人影院在线观看 | 日韩欧美精品在线 | 伊人久久影视 | 美女视频黄免费 | 7777精品久久久久久 | 91高跟黑色丝袜呻吟在线观看 | 黑人巨大国产9丨视频 | 精品人妻一区二区三区久久 | 国产一区午夜 | 欧美在线观看一区二区 | 91亚洲一线产区二线产区 | 精品国产系列 | 国产午夜精品久久久久久久久久 | 美女扒开腿让男人操 | 国产天堂网 | 日韩影院在线 | 黄色免费一级视频 | 国产精品一品二品 |