标签:火星计数
火星人的计数规则里只有a,b,c,d四个字母,计数规则从小到大是 a,b,c,d,aa,ab,ac,ad,ba,……。
第一行输入一个数T代表测试用例组数(T<=200),接下来T组测试用例,每组测试数据为一个火星数字(长度小于100)。
对于每组测试用例,输出该火星数字代表多少(结果对10000007取模)。每行输出一个结果。
2 a ab
1 6
暴力枚举;
#include<stdio.h> #include<string.h> int p(int x) { int sum=1,i; for(i=0;i<x;i++) { sum*=4; sum=sum%10000007; } return sum; } int main() { int test,len,ans,i; char a[105]; scanf("%d",&test); while(test--) { scanf("%s",a); len=strlen(a); ans=0; for(i=0;i<len;i++) { ans+=(a[i]-'a'+1)*p(len-1-i); ans=ans%10000007; } printf("%d\n",ans); } return 0; }
标签:火星计数
原文地址:http://blog.csdn.net/bigsungod/article/details/38511395