您的位置:首页 > 编程语言 > Java开发

2017第八届蓝桥杯 01 外星日历(java)

2018-03-08 16:28 302 查看
标题:外星日历

某星系深处发现了文明遗迹。

他们的计数也是用十进制。
他们的文明也有日历。日历只有天数,没有年、月的概念。
有趣的是,他们也使用了类似“星期”的概念,
只不过他们的一个星期包含了9天,
为了方便,这里分别记为: A,B,C....H,I

从一些资料上看到,
他们的23日是星期E
他们的190日是星期A
他们的343251日是星期I

令人兴奋的是,他们居然也预见了“世界末日”的那天,
当然是一个很大很大的数字
651764141421415346185

请你计算一下,这遥远的一天是该文明的星期几?

你需要提交的是一个大写字母,表示该文明的星期几,
不要填写任何多余的内容。

结果:
G

思路:
其实这道题只需要使用电脑的计算器就行了。。(简单点)。。
打开计算器,查看,科学型,把651764141421415346185复制上去,再除以9,结果为72418237935712816242.77777777777。

余数的数值代表着结果:1:A,  2:B,  3:C,  4:D,  5:E,  6:F,  7:G,  8:H,  0:I

代码如下:可以使用BigInteger操作大整数
import java.util.*;
import java.math.*;

public class Main {

public static void main(String[] args) {
char[] c = {'I','A','B','C','D','E','F','G','H'};
BigInteger b1 = new BigInteger("651764141421415346185");
BigInteger b2 = new BigInteger("9");
BigInteger yu = b1.mod(b2);
for(int i=0;i<c.length;i++){
if(i==yu.intValue()){
System.out.println(c[i]);
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: