几个有意思的算法题.docxVIP

  • 1
  • 0
  • 约8.75千字
  • 约 9页
  • 2017-10-11 发布于四川
  • 举报
几个有意思的算法题

?几个有意思的算法题1.题目标题: 高斯日记???大数学家高斯有个好习惯:无论如何都要记日记。???他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210???后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢????高斯出生于:1777年4月30日。???????在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是:1791年12月15日。???高斯获得博士学位的那天日记上标着:8113????? 请你算出高斯获得博士学位的年月日。提交答案的格式是:yyyy-mm-dd, 例如:1980-03-21请严格按照格式,通过浏览器提交答案。注意:只提交这个日期,不要写其它附加内容,比如:说明性的文字。分析:这实际就是“三天打鱼、两天晒网问题”。程序实现:(java写的)[java]?package?Forth;????public?class?DateOfNdays?{??/*??*?高斯日记(给定日期,算出X天后的日期)??*/??????/*??????*?是否是闰年??????*/??????boolean?IsleapYear(int?year){??????????return?(year?%?400?==?0?||?year?%?4?==?0??year?%?100?!=?0);??????}????????????/*??????*?获得某年某月的最大天数??????*/??????int?GetMaxDay(int?year,int?month,int?day){??????????switch(month){??????????case?1:??????????case?3:??????????case?5:??????????case?7:??????????case?8:??????????case?10:??????????case?12:??????????????return?31;??????????case?4:??????????case?6:??????????case?9:??????????case?11:??????????????return?30;??????????case?2:??????????????return?(IsleapYear(year)?29:28);??????????default:??????????????return?-1;??????????}??????}??????/*??????*?获得X天后的日期??????*/??????void?GetXDays(int?year,int?month,int?day,int?X){??????????for(int?i?=?1;?i?=?X;?i++){??????????????if(day?!=?GetMaxDay(year,month,day)){??????????????????day++;??????????????}else{??????????????????if(month?!=?12){??????????????????????month++;??????????????????????day?=?1;??????????????????}else{??????????????????????month?=?day?=?1;??????????????????????year++;??????????????????}??????????????}????????????????????????????}??????????System.out.println(X+天后的日期是+year+/+month+/+day);??????}????}??答案:1799-7-16?2.题目标题: 排它平方数??? 小明正看着 203879 这个数字发呆。??? 原来,203879 * 203879 = 41566646641??? 这有什么神奇呢?仔细观察,203879 是个6位数,并且它的每个数位上的数字都是不同的,并且它平方后的所有数位上都不出现组成它自身的数字。??? 具有这样特点的6位数还有一个,请你找出它!??? 再归纳一下筛选要求:??? 1. 6位正整数??? 2. 每个数位上的数字不同??? 3. 其平方数的每个数位不含原数字的任何组成数位答案是一个6位的正整数。请通过浏览器提交答案。注意:只提交另一6位数,题中已经给出的这个不要提交。注意:不要书写其它的内容(比如:说明性的文字)。[java]?view plaincopypackage?Fo

文档评论(0)

1亿VIP精品文档

相关文档