作业之考试n

    xiaoxiao2025-01-28  41

    数组保存,想偷懒,原先准备输入z次,超过m就换成z%m位,由于k*m%m为0,所以从0位贮存,可是,超过m并不代表数组贮存了m位 改进后:

    #include<bits/stdc++.h> using namespace std; int k,l,m,n,ha[110]; int main(){ // freopen("translate.in","r",stdin); // freopen("translate.out","w",stdout); scanf("%d%d",&m,&n); for(int z=0;z<n;++z){ int a; bool flag=0; scanf("%d",&a); for(int y=0;y<ha[101]&&y<m;++y) if(a==ha[y]){ flag=1; break; } if(!flag){ if(ha[101]==m){ ha[k%m]=a; k++; } else ha[ha[101]++]=a; ++l; } } printf("%d",l); }```
    最新回复(0)