[蓝桥杯2017初赛]外星日历 大数取模

题目描述

某星系深处发现了文明遗迹。他们的计数也是用十进制。
他们的文明也有日历。日历只有天数,没有年、月的概念。
有趣的是,他们也使用了类似“星期”的概念,只不过他们的一个星期包含了9天,为了方便,这里分别记为: A,B,C....H,I
从一些资料上看到,
他们的23日是星期E
他们的190日是星期A
他们的343251日是星期I
令人兴奋的是,他们居然也预见了“世界末日”的那天,当然是一个很大很大的数字
651764141421415346185
请你计算一下,这遥远的一天是该文明的星期几? 

输出

输出一个大写字母表示答案

答案:G

题解:大数取模,eg:123%9=1*100%9+2*10%9+3%9,所以对大数的每一位取模即可

#include<iostream>
#include<string>
#include<algorithm>
#include<math.h>
#include<string.h>
#include<map>
#include<stack>
#include<queue>
#define ll long long
using namespace  std;
int sum[105];
string a="ABCDEFGHI";
int main()
{
    ll ans=0;
    string s="651764141421415346185";
    for(int i=0;s[i];i++)
        sum[i]=s[i]-'0';
    for(int i=0;s[i];i++)
        ans=(ans*10+sum[i])%9;
    cout<<a[ans-1]<<endl;
    return 0;
}
原文地址:https://www.cnblogs.com/-citywall123/p/12345965.html