問題 色盲的民主

2021-08-17 15:49:02 字數 1415 閱讀 7474

演算法提高  色盲的民主   

時間限制:1.0s     記憶體限制:256.0mb

 色盲的民主

問題描述

n個色盲聚在一  起,討論一塊布的顏色。儘管都是色盲,卻盲得各不相同。每個人都有自己的主張,爭論不休。最終,他們決定採取民主投票的方式決定布的顏色,不管布同不同  意。某種顏色用字串表示(字串為顏色單詞或片語,也就是可能有被空格隔開的兩個單詞組成的顏色片語),只要字串不同,程式即判斷顏色不同。現在給出  這n個人所選擇的顏色,輸出最有可能的顏色(也就是獲得投票最多的顏色),如果有多個顏色獲得了最多的投票,則將它們按字典序分行全部輸出。

輸入格式

第一行乙個正整數n,表示色盲的人數

接下來n行,每行一句話

輸出格式

若干行,獲得投票最多的顏色,按字典序輸出

樣例輸入

5 red

blue

black

black

blue

樣例輸出

black

blue

資料規模和約定

n< =1000

顏色單詞最多20個字元,只包含小寫字母或者空格

注 對於char  s[20],由於cin  > >   s是讀取到空格處便會結束,也就是對於light  red,用cin只能輸入light。如果要整個輸入一行,則使用cin.getline(s,  20),其中20為這一行的最大長度,也就是你的s的容量,如果容量為30,則cin.getline(s,  30)。

另外,你在cin> > n以後cin.getline(s,30)應該會得到乙個空字串,這是因為整數n後面的換行符還未被輸入。

字串比較判斷,判斷哪個字串出現次數最多,如果多個字串出現次數一樣,按字典序排列輸出。

#include#includechar s[1100][110];

int a[1100][3];

char str[110];

int main()

l=strlen(s[j]);

for(k=0;k<=l;k++)

l=strlen(str);

for(k=0;k<=l;k++)}}

}/* for(i=1;i<=n;i++)

puts(s[i]);

printf("\n\n\n");*/

int max=0;

int z=1;

for(i=1;i<=n;i++)

}

}if(a[i][1]>max)

}// printf("max=%d\n",max);

for(i=1;i<=n;i++)//已經排好順序,直接輸出出現的最多的字串}}

return 0;

}

色盲的民主

題目描述 n個色盲聚在一 起,討論一塊布的顏色。儘管都是色盲,卻盲得各不相同。每個人都有自己的主張,爭論不休。最終,他們決定採取民主投票的方式決定布的顏色,不管布同不同 意。某種顏色用字串表示 字串為顏色單詞或片語,也就是可能有被空格隔開的兩個單詞組成的顏色片語 只要字串不同,程式即判斷顏色不同。現...

C語言 色盲的民主

演算法提高 色盲的民主 時間限制 1.0s 記憶體限制 256.0mb 問題描述 n個色盲聚在一起,討論一塊布的顏色。儘管都是色盲,卻盲得各不相同。每個人都有自己的主張,爭論不休。最終,他們決定採取民主投票的方式決定布的顏色,不管布同不同意。某種顏色用字串表示 字串為顏色單詞或片語,也就是可能有被空...

演算法提高 色盲的民主

題目鏈結 問題描述 n個色盲聚在一起,討論一塊布的顏色。儘管都是色盲,卻盲得各不相同。每個人都有自己的主張,爭論不休。最終,他們決定採取民主投票的方式決定布的顏色,不管布同不同意。某種顏色用字串表示 字串為顏色單詞或片語,也就是可能有被空格隔開的兩個單詞組成的顏色片語 只要字串不同,程式即判斷顏色不...