本文主要是介绍2502火星计数法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
火星人的计数规则里只有a,b,c,d四个字母,计数规则从小到大是 a,b,c,d,aa,ab,ac,ad,ba,……。
给出来由a,b,c,d四种字母组成的火星数字,算出该数字是第几个(从1开始)。
输入
第一行输入一个数T代表测试用例组数(T<=200),接下来T组测试用例,每组测试数据为一个火星数字(长度小于100)。
输出
对于每组测试用例,输出该火星数字代表多少(结果对10000007取模)。每行输出一个结果。
示例输入
2 a ab
示例输出
1 6
提示
#include<stdio.h>
#include<string.h>
int main()
{
long long m,n,i,s,f,g;
char e[105];
scanf("%lld",&m);
getchar();
while(m--)
{
s=0;
scanf("%s",e);
n=strlen(e);
for(i=0;i<n-1;i++)
{
s=(s+e[i]-'a'+1)*4;
}
s=s+(e[n-1]-'a'+1);
s=s%10000007;
printf("%lld\n",s);
}
return 0;
}
#include<string.h>
int main()
{
long long m,n,i,s,f,g;
char e[105];
scanf("%lld",&m);
getchar();
while(m--)
{
s=0;
scanf("%s",e);
n=strlen(e);
for(i=0;i<n-1;i++)
{
s=(s+e[i]-'a'+1)*4;
}
s=s+(e[n-1]-'a'+1);
s=s%10000007;
printf("%lld\n",s);
}
return 0;
}
这篇关于2502火星计数法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!