時間限制:
3000 ms | 記憶體限制:
150000 kb
難度:4 描述
在美麗大興安嶺原始森林中存在數量繁多的物種,在勘察員帶來的各種動物資料中有未統計數量的原始動物的名單。科學家想判斷這片森林中哪種動物的數量最多,但是由於資料太過龐大,科學家終於忍受不了,想請聰明如你的acmer來幫忙。
輸入第一行輸入動物名字的數量n(1<= n <= 4000000),接下來的n行輸入n個字串表示動物的名字(字串的長度不超過10,字串全為小寫字母,並且只有一組測試資料)。
輸出輸出這些動物中最多的動物的名字與數量,並用空格隔開(資料保證最多的動物不會出現兩種以上)。
樣例輸入
10boar
pigsheep
gazelle
sheep
sheep
alpaca
alpaca
marmot
mole
樣例輸出
sheep 3
**[陳玉 張云聰]原創
上傳者陳玉
一般排序超時,,就用字典樹了-.-
-.-記下最大個數及對應的字串.....
錯誤**:tle,,,,sort排序時間是nlog2 n 是10的8次方左右。。。
#include#include#include#includeusing namespace std;
struct nodech[4000100];
bool cmp(node xx,node yy)
lp=i;
} // for (int i=0;i<=n;i++)
// printf("666 %s\n",ch[i].hh);
printf("%s %d",ch[kk].hh,ss);
// }
return 0;
}
錯誤**:
#include#include#include#includeusing namespace std;
struct trie;
char *ko;//指標
int s;
struct trie root;
void jia(char xx)
if (i==ll-1)
}kk=kk->chilren[xx[i]-'a']; }}
int main()
printf("%s %d\n",ko,s);//用指標是最大錯誤、、因為我指向的是lll,最後一定輸出最後那個lll.....
return 0;
}
ac**:
#include#include#include#includeusing namespace std;
struct trie;
char ko[12];
int s;
struct trie root;
void jia(char xx)
kk=kk->chilren[xx[i]-'a'];
if (i==ll-1)}}
}int main()
printf("%s %d\n",ko,s);
return 0;
}
nyoj290 動物統計加強版
時間限制 3000 ms 記憶體限制 150000 kb 難度 4 描述 在美麗大興安嶺原始森林中存在數量繁多的物種,在勘察員帶來的各種動物資料中有未統計數量的原始動物的名單。科學家想判斷這片森林中哪種動物的數量最多,但是由於資料太過龐大,科學家終於忍受不了,想請聰明如你的acmer來幫忙。輸入第一...
NYOJ 290 動物統計加強版 字典樹
經典的字典樹的問題,幾乎可以來當模版來用了,就留下來了 不過貌似用運算子過載排序 不知道是不是 也能過。需要注意的是開闢乙個新的記憶體時下乙個指標一定要指向null 字典樹 include include includeint max char ans 101 struct node struct ...
nyoj 290 動物統計加強版(RS雜湊)
時間限制 3000 ms 記憶體限制 150000 kb 難度 4 描述 在美麗大興安嶺原始森林中存在數量繁多的物種,在勘察員帶來的各種動物資料中有未統計數量的原始動物的名單。科學家想判斷這片森林中哪種動物的數量最多,但是由於資料太過龐大,科學家終於忍受不了,想請聰明如你的acmer來幫忙。輸入第一...