[蓝桥杯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;
}

 

posted @ 2020-02-22 16:35  知道了呀~  阅读(386)  评论(0编辑  收藏  举报