本蒟蒻在做 P1540 机器翻译的时候,先交了一个代码:
#include<iostream>
using namespace std;
int a[110];
int main(){
int m,n,x,y=0,sum=0;
bool pd;
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>x;
pd=false;
for(int i=0;i<=m-1;i++){
if(a[i]==x){
pd=true;
break;
}
}
if(pd==false){
++sum;
if(y<=m-1){
a[y++]=x;
}
else{
a[0]=0;
for(int i=1;i<=m-1;i++){
a[i-1]=a[i];
}
a[y-1]=x;
}
}
}
cout<<sum;
}
然后,
突然发现for(int i=1;i<=n;i++)的里面又写了一个for(int i=0;i<=m-1;i++)和for(int i=1;i<=m-1;i++)。(话说编译器竟然不报warning)
然后我改成了j,还是那一个点WA。??
我在调试的时候,因为次数多,把for(int j=0;j<=m-1;j++)里面的m改成了y。
结果就AC了?!!