poj2498 125ms

#include<cstdio>
#include<cstring>
using namespace std;
int a[3]={9,3,7};
//原来是倒着乘的,我佛了
int main()
{
    int n,len,sum;
    int cnt,j,x;
    char id[10];
    scanf("%d",&n);
    getchar();
    for(int k =  1;k<=n;++k)
    {
        sum = 0;
        gets(id);
        len = strlen(id);
        cnt = 0,x = 0;
        for(int i = len-1;i>=0;--i,cnt++)
        {
            if(id[i]!='?'){
               sum += a[cnt%3]*(id[i]-'0');
            }else{
                j = cnt;
                x = i;
            }
        }
        sum%=10;
        for(int i = 0;i<=9;++i)
        {
            if(((a[j%3]*i)%10+sum)%10==0){
                id[x] = i+'0';
                break;
            }
        }
        printf("Scenario #%d:\n",k);
        puts(id);
        printf("\n");
    }
    return 0;
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务