ICPC 北京大学网站上的1007题

来源:百度知道 编辑:UC知道 时间:2024/05/25 07:41:10
#include<iostream>
using namespace std;
int main()
{
int n,m,i,j,k,count,min;
int sort[50];//存放每行的的倒置度
int flag;
char str[100][50],temp;
cin>>n>>m;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
cin>>str[i][j];
}
}

for(i=0;i<m;i++)
{
count=0;
for(j=0;j<n-1;j++)
{
temp=str[i][j];
for(k=j+1;k<n;k++)
{
if((temp-str[i][k])>0)
count++;
}
}
sort[i]=count;
}

for(k=0;k<m;k++)
{
min=sort[0];
flag=0;
for(i=0;i<m;i++)
{
if(min>sort[i])
{

那个错误为 运行时间超出 就是说 你的代码不简练 运行时间过长

你可以用各种方法来减少运行时间

至于这道题的答案代码~~

网上满天飞~

http://www.baidu.com/s?wd=DNA%20Sorting&cl=3

参考一下吧~

-------------------
对这题一位哥们的心得

这是一个典型的字符串处理题,但是却很容易误导人。因为测试数据并不像样本输入那样只有那么几个字母,因该有别的。所以有部分很容易就被水题水了。当初自己也被水了很久,最后一气对所有字母排序。就AC了。读入的时候就可以判定出逆序的大小。之后用SORT()排序输出就可以了。