为什么不对 本机上输出是对的

P1012 [NOIP1998 提高组] 拼数

```cpp #include<iostream> #include<cstdio> using namespace std; char a[21][1000001]; int paixu[21],len[21]; int main(){ int n; int lenmax=0; cin>>n; for(int i=0;i<=n;i++){//i=0 把\n读掉 int j=0; while(a[i][j]!=' '&&a[i][j]!='\n')scanf("%c",&a[i][++j]);//a[i][j]!='\n'不能掉 len[i]=j-1; if(len[i]>lenmax)lenmax=len[i]; } for(int i=1;i<=20;i++)paixu[i]=i; int c=0; int biaoji[21]={0}; for(int j=1;j<=n;j++){//冒泡 for(int k=1;k<=n-j;k++){//重要 paixu[k] paixu[k+1] 一直变更 for(int i=1;i<=lenmax;i++){//比较第几位 这个循环要放最后 if(biaoji[paixu[k]]==0&&i!=1)continue; //前一位不相同且不是第一次比较 if(a[paixu[k]][i]<a[paixu[k+1]][i]){ paixu[0]=paixu[k];// paixu[k]=paixu[k+1]; paixu[k+1]=paixu[0];// } else if(a[paixu[k]][i]==a[paixu[k+1]][i]){//当前位相同 标记比较下一位 c++; biaoji[paixu[k]]++; biaoji[paixu[k+1]]++; } if(c==0)break;//这一位不相同 else c=0;//有相同的一位 继续比较下一位 } } } for(int i=1;i<=n;i++){ for(int j=1;j<=len[paixu[i]];j++)cout<<a[paixu[i]][j]; } return 0; } ```
by 就爱无名 @ 2017-05-31 12:54:47


```cpp #include<iostream> #include<cstdio> #include<string.h>//memset using namespace std; char a[21][1000001]; int paixu[21],len[21]; int main(){ int n; int lenmax=0; cin>>n; memset(a,57,sizeof(a));//a为char ASCII码48~57为0到9 赋值(int)a=9 //为了如123 1230前几位相同 后者多一位 后者要放前面的问题 把前者看作1239 9>0 for(int i=0;i<=n;i++){//i=0 把\n读掉 int j=0; while(a[i][j]!=' '&&a[i][j]!='\n')scanf("%c",&a[i][++j]);//a[i][j]!='\n'不能掉 len[i]=j-1; if(len[i]>lenmax)lenmax=len[i]; } for(int i=1;i<=20;i++)paixu[i]=i; //int c=0; int biaoji[21]={0}; for(int j=1;j<=n;j++){//冒泡 for(int k=1;k<=n-j;k++){//重要 paixu[k] paixu[k+1] 一直变更 for(int i=1;i<=lenmax;i++){//比较第几位 这个循环要放最后 if(biaoji[paixu[k]]==0&&i!=1)break/*continue*/; //前一位相同且不是第一次比较 if(a[paixu[k]][i]<a[paixu[k+1]][i]){ paixu[0]=paixu[k];// paixu[k]=paixu[k+1]; paixu[k+1]=paixu[0];// } else if(a[paixu[k]][i]==a[paixu[k+1]][i]){//当前位相同 标记比较下一位 //c++; biaoji[paixu[k]]++; biaoji[paixu[k+1]]++; } /*if(c==0)break;//这一位不相同 else c=0;//有相同的一位 继续比较下一位*/ } } } for(int i=1;i<=n;i++){ for(int j=1;j<=len[paixu[i]];j++)cout<<a[paixu[i]][j]; } return 0; } ```
by 就爱无名 @ 2017-06-01 13:14:41


你写的怎么这么麻烦?
by OSYj @ 2017-07-01 21:06:08


我靠我最后一个点在本机上也是对的,一提交就错了,什么情况
by 火鸡火鸡火鸡 @ 2017-07-23 02:12:43


@[火鸡火鸡火鸡](/space/show?uid=26710) 我也是最后一个点在本机上是对的,一提交就错了。。。你解决了吗
by omf2333 @ 2018-02-14 17:24:21


|