您的位置:首页 > 其它

poj 1007 求逆序数

2010-05-07 23:26 323 查看
这道题根本就没读懂题,看了别的代码,写出来的,以后谨慎那么做,仗着这道题简单,用b[i]存储逆序数的个数,然后从多逆序到小逆序输出

1 #include <stdio.h>
2 int main()
3 {
4 FILE *p=fopen("2.txt","r");
5 char a[100][51];
6 int n,m,i,j,k,max,b[100],temp;
7 fscanf(p,"%d%d",&n,&m);
8 for(i=max=0;i<m;i++)
9 {
10 fscanf(p,"%s",a[i]);
11 fgetc(p); 12 for(j=temp=0;j<n-1;j++)
13 {
14 for(k=j+1;k<n;k++)
15 {
16 if(a[i][j]>a[i][k])
17 temp++;
18 }
19 }
20 b[i]=temp;
21 max=(max>b[i]?max:b[i]);
22 }
23 for(i=0;i<=max;i++)
24 {
25 for(j=0;j<m;j++)
26 {
27 if(b[j]==i)
28 printf("%s\\n",a[j]);
29 }
30 }
31 //system("pause");
32 return 1;
33 }
34 InsertToEditor('代码 1 #include <stdio.h>
2 int main()
3 {
4 FILE *p=fopen("2.txt","r");
5 char a[100][51];
6 int n,m,i,j,k,max,b[100],temp;
7 fscanf(p,"%d%d",&n,&m);
8 for(i=max=0;i<m;i++)
9 {
fscanf(p,"%s",a[i]);
fgetc(p);
for(j=temp=0;j<n-1;j++)
{
for(k=j+1;k<n;k++)
{
if(a[i][j]>a[i][k])
temp++;
}
}
b[i]=temp;
max=(max>b[i]?max:b[i]);
}
for(i=0;i<=max;i++)
{
for(j=0;j<m;j++)
{
if(b[j]==i)
printf("%s\\n",a[j]);
}
}
//system("pause");
return 1;
}

')博客园怎么这么插代码了,不如以前了,还是我不会操作?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: