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

标题:外星日历


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


他们的计数也是用十进制。
他们的文明也有日历。日历只有天数,没有年、月的概念。
有趣的是,他们也使用了类似“星期”的概念,
只不过他们的一个星期包含了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]);
    		}
    	}
    }
}


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值