青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

/*
? Name:6.剪刀石頭布
? Copyright:
? Author:
? Date: 28-05-06 08:51
? Description:
N個小孩正在和你玩一種剪刀石頭布游戲(剪刀贏布,布贏石頭,石頭贏剪刀)。N個小孩中有一個是裁判,其余小孩分成三組(不排除某些組沒有任何成員的可能性),但是你不知道誰是裁判,也不知道小孩們的分組情況。然后,小孩們開始玩剪刀石頭布游戲,一共玩M次,每次任意選擇兩個小孩進(jìn)行一輪,你會被告知結(jié)果,即兩個小孩的勝負(fù)情況,然而你不會得知小孩具體出的是剪刀、石頭還是布。已知各組的小孩分別只會出一種手勢(因而同一組的兩個小孩總會是和局),而裁判則每次都會隨便選擇出一種手勢,因此沒有人會知道裁判到底會出什么。請你在M次剪刀石頭布游戲結(jié)束后,猜猜誰是裁判。如果你能猜出誰是裁判,請說明最早在第幾次游戲結(jié)束后你就能夠確定誰是裁判。

輸入要求:
輸入文件包含多組測試數(shù)據(jù),每組測試數(shù)據(jù)第一行為兩個整數(shù)N和M(1<=N<=500,0<M<=2000),分別為小孩的個數(shù)和剪刀石頭布游戲進(jìn)行的次數(shù)。接下來M行,每行兩個整數(shù)且中間以一個符號隔開。兩個整數(shù)分別為進(jìn)行游戲的兩個小孩各自的編號(為小于N的非負(fù)整數(shù))。符號的可能值為“=”、“>”和“<”,分別表示和局、第一個小孩勝和第二個小孩勝三種情況。例:
3 3
0<1
1<2
2<0
3 5
0<1
0>1
1<2
1>2
0<2
4 4
0<1
0>1
2<3
2>3
1 0

?

輸出要求:
1.每組測試數(shù)據(jù)輸出一行,若能猜出誰是裁判,則輸出裁判的編號,并輸出在第幾次游戲結(jié)束后就能夠確定誰是裁判,小孩的編號和游戲次數(shù)以一個空格隔開;
2.如果無法確定誰是裁判,輸出-2;如果發(fā)現(xiàn)剪刀石頭布游戲的勝負(fù)情況不合理(即無論誰是裁判都會出現(xiàn)矛盾),則輸出-1。例:
-2
1 4
-1
0 0

?

評分規(guī)則:
1.程序?qū)⑦\(yùn)行在一臺Linux機(jī)器上(內(nèi)存使用不作嚴(yán)格限制),在每一測試用例上運(yùn)行不能超過10秒,否則該用例不得分;
2.要求程序能按照輸入樣例的格式讀取數(shù)據(jù)文件,按照輸出樣例的格式將運(yùn)行結(jié)果輸出到標(biāo)準(zhǔn)輸出上。如果不能正確讀入數(shù)據(jù)和輸出數(shù)據(jù),該題將不得分;
3.該題目共有5個測試用例,每個測試用例為一個輸入文件。各測試用例占該題目分?jǐn)?shù)的比例分別為5%、10%、15%、30%和40%;
4.該題目20分。
*/

/*
算法介紹:
1。如果只有1個人,參加比賽,那么他就是裁判,即輸出:0 0 。
2。建立數(shù)組 players[MAX][MAX] 記錄比賽結(jié)果(數(shù)組賦初值0),若選手a輸給b,則players[a][b]=1,players[b][a]=3;若打平,則players[a][b]=players[b][a]=2;
注意:在記錄成績之前,先判斷選手a,b 是否已經(jīng)比賽過,如果已經(jīng)比賽過,則判斷先前的比賽結(jié)果是否與當(dāng)前結(jié)果相同,若不相同,在數(shù)組judger[]中做標(biāo)記(數(shù)組賦初值0),若judger[a]=0,使judger[a]=1,表示a有可能為裁判;若judger[a]=1,則使judger[a]=2,表示a肯定為裁判,因為他和兩個人出現(xiàn)不同結(jié)果。
同理處理b。
3。遍歷數(shù)組judger[],用temp1記錄judger[i]=1出現(xiàn)的次數(shù),用temp2記錄judger[i]=2出現(xiàn)的次數(shù),如果2個或以下的人可能為裁判,且沒有人肯定為裁判,即if (temp1 <= 2 && temp2 == 0),則無法確定誰是裁判;
如果2個或以下的人可能為裁判,且有1人肯定為裁判,即if (temp1 <= 2 && temp2 == 1),則確定裁判i;
如果2個以上的人可能為裁判,即if (temp1 > 2),則勝負(fù)情況不合理。
*/

#include <iostream>
#include<fstream>
#include <time.h>

using namespace std;

const int MAX = 500;
void Readata(const char *filename);


int main()
{
?time_t startTime;
?time_t endTime;
?time(&startTime);

?Readata("in.txt");


?time(&endTime);
?cout << difftime(endTime, startTime) << endl;

?getchar();
?return 0;
}

void Readata(const char *filename)
{
????? fstream in(filename);
????? if (!in)
??????????? return ;?? //結(jié)束程序執(zhí)行

????? while (!in.eof())
????? {
??????????? int N, M;
??????????? in >> N;
??????????? in >> M;
???????????
??????????? if (N == 1) //如果只有1個人,參加比賽,那么他就是裁判
????????????????? cout << 0 << ' ' << 0 << endl;
?????????????????
??????????? int players[MAX][MAX] = {0};//記錄比賽結(jié)果
??????????? int *judger = new int[N];//記錄是否可能為裁判,0表示不可能,1表示可能,2表示確定
??????????? for (int i=0; i<N; i++)
????????????????? judger[i] = 0;
?????????????????
??????????? int n = 0;//累計比賽場數(shù)
??????????? int min = n;//存儲能夠確定誰是裁判的最少場數(shù)
??????????? while (!in.eof() && n < M)//讀入比賽結(jié)果信息
??????????? {
????????????????? char data[3]; //存儲比賽選手編號和結(jié)果

????????????????? in >> data[0];
????????????????? in >> data[1];
????????????????? in >> data[2];
???????????????? // cout << data[0] << ' ' << data[1] << ' ' << data[2] << endl;
????????????????? n++;
????????????????? int flag = (data[1]=='<')? 1 :((data[1]=='=')? 2 : 3);//分別用1,2,3表示負(fù),平,勝
?????????????????
????????????????? if (players[data[0]-'0'][data[2]-'0'] == 0)//若a,b未對局過,存儲比賽結(jié)果
????????????????? {
??????????????????????? players[data[0]-'0'][data[2]-'0'] = flag;
??????????????????????? players[data[2]-'0'][data[0]-'0'] = 4 - flag;
????????????????? }
????????????????? else if (players[data[0]-'0'][data[2]-'0'] != flag)//若a,b已對局過,且比賽結(jié)果不同
????????????????? {
??????????????????????? if (judger[data[0]-'0'] == 0) //a有可能為裁判
????????????????????????????? judger[data[0]-'0'] = 1;
??????????????????????? else if (judger[data[0]-'0'] == 1)//a就是裁判
??????????????????????? {
????????????????????????????? judger[data[0]-'0'] = 2;
????????????????????????????? min = n;
??????????????????????? }
???????????????????????
??????????????????????? if (judger[data[2]-'0'] == 0) //b有可能為裁判
????????????????????????????? judger[data[2]-'0'] = 1;
??????????????????????? else if (judger[data[2]-'0'] == 1) //a就b是裁判
??????????????????????? {
????????????????????????????? judger[data[2]-'0'] = 2;
????????????????????????????? min = n;
??????????????????????? }
????????????????? }
???????????????? // cout << "players["<<data[0]-'0'<<"]["<<data[2]-'0'<<"]="<<players[data[0]-'0'][data[2]-'0']<<endl;
??????????? }
??????????? int temp1 = 0; //記錄judger[i]=1出現(xiàn)的次數(shù)
??????????? int temp2 = 0; //記錄judger[i]=2出現(xiàn)的次數(shù)
??????????? int answer;
??????????? for (int i=0; i<N; i++)
??????????? {
????????????????? //cout << judger[i] << ' ';
????????????????? if (judger[i] == 1)
?????????????????????? temp1++;

????????????????? if (judger[i] == 2)
????????????????? {
?????????????????????? temp2++;
?????????????????????? answer = i;
????????????????? }
??????????? }
??????????? cout << endl;
??????????? if (temp1 <= 2 && temp2 == 0)
????????????????? cout << -2 << endl;
??????????? else? if (temp1 <= 2 && temp2 == 1)
????????????????? cout << answer << ' ' << min << endl;
??????????? else? if (temp1 > 2)
????????????????? cout << -1 << endl;
?????????????????
??????????? delete []judger;
????? }

??? in.close(); //關(guān)閉文件
}

?

Posted on 2006-05-30 13:59 夢想飛揚(yáng) 閱讀(600) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费欧美日韩| 99在线|亚洲一区二区| 亚洲精品乱码久久久久久按摩观| 国产一区白浆| 影音先锋亚洲电影| 亚洲区一区二| 亚洲一二区在线| 亚洲欧美高清| 久久九九电影| 亚洲第一久久影院| 亚洲裸体在线观看| 亚洲综合二区| 欧美a一区二区| 国产精品人成在线观看免费| 好吊视频一区二区三区四区| 亚洲精品色图| 久久99在线观看| 亚洲国产欧美日韩精品| 一区二区三区导航| 久久精品视频在线| 欧美三级小说| 亚洲成人在线观看视频| 亚洲免费在线视频| 亚洲成色精品| 亚洲一区在线播放| 久久久久久高潮国产精品视| 欧美日韩国产免费| 亚洲电影免费观看高清完整版在线 | 国产精品视频免费| 国模私拍视频一区| 亚洲午夜激情网页| 欧美成人一品| 午夜在线精品| 欧美午夜一区| 亚洲国产精品日韩| 久久精品视频在线免费观看| 亚洲人成网站精品片在线观看| 校园激情久久| 欧美日韩妖精视频| 亚洲精品国产拍免费91在线| 久久午夜精品一区二区| 亚洲男人影院| 国产精品久久久久av| 99在线精品视频在线观看| 另类天堂av| 久久久999精品免费| 国产亚洲电影| 欧美在线影院| 欧美一级视频精品观看| 国产精品永久免费在线| 宅男精品视频| 最新亚洲一区| 欧美极品aⅴ影院| 亚洲欧洲一区| 亚洲国产另类久久久精品极度| 久久影院午夜片一区| 在线观看欧美成人| 欧美国产一区在线| 欧美黄色aaaa| 中国成人在线视频| 99视频超级精品| 欧美视频在线一区| 午夜影院日韩| 欧美亚洲视频一区二区| 国产一区二区福利| 久久视频精品在线| 久久精品国产99| 伊人久久亚洲影院| 亚洲成色精品| 欧美视频一区二区三区…| 亚洲男人第一网站| 午夜在线不卡| 亚洲第一区在线| 亚洲国产综合在线| 国产精品久久久久7777婷婷| 久久精品一本| 欧美成人资源| 亚洲欧美日韩第一区| 久久aⅴ国产欧美74aaa| 亚洲国产精品一区二区尤物区| 亚洲国产老妈| 国产精品网站视频| 男女视频一区二区| 欧美视频精品在线| 亚洲国产精品福利| 一区在线免费观看| 亚洲国产精品美女| 国产精品国码视频| 久久综合色影院| 欧美国产精品日韩| 欧美一区二区三区视频| 久久这里只有| 亚洲欧美国产一区二区三区| 久久精品五月| 宅男66日本亚洲欧美视频| 欧美综合77777色婷婷| 日韩午夜精品| 欧美一区二区视频网站| 亚洲看片免费| 欧美在线播放一区二区| 日韩视频一区二区| 欧美一区二区三区在| 中文高清一区| 美女精品视频一区| 欧美在线视频日韩| 欧美日韩亚洲一区二区| 欧美国产第一页| 国产一区91| 亚洲图片欧美日产| 99国产精品久久| 狼人天天伊人久久| 久久精品一本| 国产精品伊人日日| 一本大道久久a久久精二百| 亚洲国产精品一区在线观看不卡| 午夜影院日韩| 欧美在线啊v| 国产精品视频久久一区| 亚洲精品免费电影| 亚洲第一中文字幕| 久久狠狠亚洲综合| 欧美一级淫片播放口| 欧美三级电影网| 亚洲国产综合在线看不卡| 在线观看视频亚洲| 久久精品卡一| 久久综合国产精品| 韩国在线一区| 久久精品人人做人人爽电影蜜月 | 亚洲国产精品久久久| 欧美中文字幕在线播放| 欧美在线观看视频一区二区三区| 欧美午夜精品理论片a级大开眼界| 亚洲黑丝在线| 亚洲国产一区二区在线| 老妇喷水一区二区三区| 免费黄网站欧美| 亚洲国产成人在线视频| 久久夜色精品国产欧美乱极品 | 在线精品一区二区| 久久久久久久尹人综合网亚洲| 久久久国产精品一区二区中文| 国产精品亚洲综合一区在线观看| 亚洲视频视频在线| 西瓜成人精品人成网站| 国产午夜精品久久| 久久精品99国产精品日本 | 美女国产一区| 亚洲精品久久久久久一区二区| 久久不射2019中文字幕| 久久婷婷国产综合国色天香| 精品福利免费观看| 蜜臀久久久99精品久久久久久 | 欧美成人tv| 亚洲美女在线观看| 国产精品成人观看视频国产奇米| 99视频有精品| 久久精品女人天堂| 亚洲欧洲一级| 国产精品三级视频| 久久婷婷国产综合国色天香| 亚洲黄色小视频| 亚洲综合首页| 国产亚洲女人久久久久毛片| 久热国产精品| 中文在线不卡| 麻豆精品91| 亚洲午夜精品网| 国产一区二区三区在线观看免费视频 | 欧美视频在线免费| 欧美在线视频观看| 亚洲国产99| 欧美一区国产在线| 亚洲黄色成人| 国产欧美视频一区二区| 欧美不卡视频一区发布| 亚洲制服丝袜在线| 亚洲第一中文字幕| 久久国产精品久久久久久| 亚洲精品一区二区三区四区高清| 国产精品久久久一区麻豆最新章节| 久久久五月婷婷| 亚洲自拍16p| 亚洲青色在线| 免费不卡视频| 久久爱www久久做| 一区二区电影免费观看| 怡红院av一区二区三区| 国产精品日韩在线一区| 欧美乱在线观看| 蜜桃视频一区| 久久久午夜精品| 午夜欧美精品久久久久久久| 99综合精品| 亚洲区欧美区| 欧美国产在线视频| 榴莲视频成人在线观看| 久久精品中文| 久久久精品国产一区二区三区| 亚洲一二区在线|