首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

POJ1007 为什么小弟我的有有关问题 wa

2013-10-05 
POJ1007 为什么我的有问题 wa#include stdio.h#include string.hint main(){int count1int count2in

POJ1007 为什么我的有问题 wa

#include <stdio.h>
#include <string.h>
int main()
{
    int count1;
    int count2;
    int i;
    int j;
    int k;
    int count=0;
    char dna[100][51];
    char temp[51];
    scanf("%d%d",&count1,&count2);
    for(i=0;i<count2;i++)
        scanf("%s",dna[i]);
    for(i=0;i<count2;i++)
    {
        for(j=0;j<count1-1;j++)
        {
            for(k=j+1;k<count1;k++)
            {
                if(dna[i][j]>dna[i][k])
                    count++;
            }
        }
        dna[i][count1]=count;
        dna[i][count1+1]='\0';
        count=0;
    }
    for(i=0;i<count2-1;i++)
        for(j=i+1;j<count2;j++)
        {
            if(dna[i][count1]>dna[j][count1])
            {
                strcpy(temp,dna[i]);
                strcpy(dna[i],dna[j]);
                strcpy(dna[j],temp);
            }
        }
    for(i=0;i<count2;i++)
        dna[i][count1]='\0';
    for(i=0;i<count2;i++)
        printf("%s\n",dna[i]);

    return 0;
}


按照他给的例子没有问题啊 自己测试几个也没有问题 为什么wa

我的思路是 先求出逆序数 然后把他付给数组的最末位 相当于一个附带“属性” 然后比较排序
排序之后在把'\0'加回到原来位置 哪里错了 求大神们知道 

[解决办法]
char只能存到127。长度50的字符串逆序数可以上千。

热点排行