UVA 10905(为什么)

自定义比较函数就可简单解决。刚开始的时候有一个小问题就一直run  time  error,后来改了之后就过了,不明白为什么。希望路过的大神赐教。

/**
**author :Skylon **
╭︿︿︿╮
{/ A  C /} 
 ( (OO) ) 
  ︶︶︶ 
**    **
**   题**
** 2014 年 月 日**
**/
#include <cmath>
#include <queue>
#include <stack>
#include <vector>
#include <cstdio>
#include <string>
#include <cctype>
#include <climits>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
using namespace std;
string ch[60];
bool cmp (string a,string b)
{
    return a+b>b+a;
}
int main()
{
   int n;
   while (scanf("%d",&n),n)
   {
    for (int i=1;i<=n;i++)//原来写的是  for (int i=0;i<n;i++)
    {
        cin>>ch[i];
    }
    sort(ch+1,ch+n+1,cmp);
    for (string::size_type i=1;i<=n;i++)//原来写的是  for (string::size_type i=0;i<n;i++)
    {
        cout<<ch[i];
    }
    cout<<endl;
   }
   return 0;
}
原来写的0到n的循环,一直run time error。改了之后就过了,还没弄明白。。

你可能感兴趣的:(error,sort,time,run,自定义比较函数)