问题标题: 酷町堂:3217 回文数

0
0
已解决
董宇昊
董宇昊
初级启示者
初级启示者

#include<iostream>

using namespace std;

int n,a[101],b[101],ans,i;

void init(int a[]){

    string s;

    cin>>n>>s;

    memset(a,0,sizeof(a));

    a[0]=s.length();

    for(i=1;i<=a[0];i++){

        if(s[a[0]-i]>='0'&&s[a[0]-i]<='9') a[i]=s[a[0]-i]-'0';

        else a[i]=s[a[0]-i]-'A'+10;

    }

}

bool check(int a[]){

    for(i=1;i<=a[0];i++){

        if(a[i]!=a[a[0]-i+1]) return false;

    }

    return true;

}

void jia(int a[]){

    int k;

    for(int i=1;i<=a[0];i++)b[i]=a[a[0]-i+1];

    for(int i=1;i<=a[0];i++)a[i]+=b[i];

    for(int i=1;i<=a[0];i++){

        a[i+1]+=a[i]/n;

        a[i]%=n;

    }

    if(a[a[0]+1]>0) a[0]++;

}

int main(){

init(a);

if(check(a)){

        cout<<a;

        return 0;

}

ans=0;

while(ans<=30){

        ans++;

        jia(a);

        if(check(a)){

            cout<<"STEP="<<ans<<endl;

            return 0;

        }

}

cout<<"Impossible!";

return 0;

}

怎么错了??


0
已采纳
黄依成
黄依成
中级天翼
中级天翼

emmmmm......

我也不知道

但输出Impossible的时候要用中文感叹号

“!”和“!”还是有区别滴

0
0
董宇昊
董宇昊
初级启示者
初级启示者

不对!黄依成

我已经知道错误了。

酷町侠,把我的帖关闭吧!~~~

我要回答