题解 洛谷P1808 【单词分类】
此题STL
S T L万岁!
此题可以用map,不过看到有人已经写过了,只好改用set,不过map我也会说。
一、set
set,即集合,特点是自动去重。所以,在这道题中,也挺好用的。不会用的请去这里学。 这样一来,就不用我特别详细的说了吧。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
#include<bits/stdc++.h> using namespace std; set<string>s; int main() { int n; cin>>n; while(n--) { string t; cin>>t; int len=t.size(); int i,j; for(i=0;i<len-1;i++) { int k=i; for(j=i+1;j<len;j++) { if(t[k]>t[j]) { k=j; } } if(i!=k) { swap(t[i],t[k]); } } s.insert(t); } cout<<s.size()<<endl; return 0; }
二.map
map是一种大号数组,而且下标不仅仅必须是整型。不会用的请去这里学。至于代码的实现,很多人都写过了,我就不放了。
不要妄图追上西坠的太阳,而是要在黎明前就等着它!