张麻子


私信TA

用户名:qwezjh

访问量:3033

签 名:

上任鹅城

等  级
排  名 881
经  验 3554
参赛次数 0
文章发表 25
年  龄 0
在职情况 学生
学  校 asd
专  业

  自我简介:

TA的其他文章

解题思路:

注意事项:

参考代码:

#include "stdio.h"

#include "string.h"

int PANDUAN(char s[100]) 

{

int h = strlen(s);

for (int i = 0; s[i] != '\0'; i++) 

{

if (s[i] == s[h - 1]) 

{

h--;

continue;

}

if (s[i] != s[h - 1]) 

{

break;

}

}

if (h == 0)return 1;

if (h != 0)return 0;

}

void add(char s[100],int n) 

{

int h = strlen(s);

int H = h;

char ss[100];

strcpy(ss, s);

for (int i = 0; i < H; i++) 

{

s[i] = (s[i]-'0' + ss[h - 1]-'0')+'0';

h--;

if (s[H - 1] - '0' >= n) { s[H] = '0'; s[H + 1] = '\0'; }

if (s[H - 1] -'0'< n) { s[H] = '\0'; }

if (s[i]-'0'>= n)

{

s[i] = (s[i]-'0' - n)+'0';

s[i + 1] =(s[i+1]-'0'+1)+'0';

}

}

}

int main() 

{

int n;

char s[100];

scanf("%d", &n);

getchar();

gets(s);

int k = 0;;

while (1) 

{

add(s, n); k++;

if (PANDUAN(s) == 1) { printf("STEP=%d", k); break; }

if (k > 30) { printf("Impossible!"); break; }

}

}


 

0.0分

6 人评分

  评论区

  • «
  • »