迭代器问题
给出n个字符串,请将它们(按字典序)从小到大排序后输出。
(字符串比较规则样例参考:a < abc < bcaa)
请不要使用库函数。
字典序的概念请参照百度百科
http://baike.baidu.com/view/4670107.htm
Input
第一行只有一个正整数n。(n <= 100)
后面n行,每行一串由小写字母组成的字符串(长度不超过100)
Output
输出有n行。
从小到大输出n行字符串。
Sample Input
3
bcaa
a
abc
下面是我的代码
// Note:Your choice is C++ IDE
#include <iostream>
#include<set>
#include<vector>
using namespace std;
int main()
{
set< vector<char> > paixu;
vector<char> charu;
int i,j,n,ct=0;
char c;
cin>>n;
cin.ignore();
while(1)
{
c=cin.get();
if(c!='\n')
charu.push_back(c);
else
{
paixu.insert(charu);
ct++;
if(ct==n) break;
charu.clear();
}
}
vector<char>::iterator ve;
set< vector<char> >::iterator it;
for(it=paixu.begin(); it!=paixu.end(); it++)
{
for(ve=(*it).begin(); ve!=(*it).end(); ve++)
cout<<*ve;
cout<<endl;
}
return 0;
}
for(ve=(*it).begin(); ve!=(*it).end(); ve++)
上面这句编译不过,请问事什么原因呢,各位高手们,