文章目录

  • 高斯日记
  • 马虎的算式
  • 第39级台阶
  • 总结

高斯日记

题目:
大数学家高斯有个好习惯:无论如何都要记日记。
他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210。
后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?
高斯出生于:1777 年 4 月 30 日。
在高斯发现的一个重要定理的日记上标注着:5343,因此可算出那天是:1791 年 12 月 15 日。
高斯获得博士学位的那天日记上标着:8113。
请你算出高斯获得博士学位的年月日。
提交答案的格式是:yyyy−mm−dd, 例如:1980−03−21。
解题思路:
这题采用“翻日历”的思路去解,也就是枚举。

  1. 先定义年月日,然后进行循环。
  2. 如果月份是12月,则日为31,翻过去后,日是32,那么就翻到下一年,此时年份加1,月日为1
  3. 如果月份是1、3、5、7、8、10,则日为31,翻过去后,日为32,那么就翻到下一个月,此时月份加1,日为1
  4. 如果月份是4、6、9、11, 则日为30,翻过去后,日为31,那么就翻到下一个月,此时月份加1,日为1
  5. 如果月份是2月,则要判断当年是否为闰年,如果为闰年,则为29天,否则是28天
#include <stdio.h>
//判断是否为闰年
bool isLeapyear(int y) {return (y%4 == 0 && y%100 !=0) || (y %400 ==0);
}
int main() {int y = 1777;int m = 4;int d = 30;for(int i = 0; i<8112; ++i) { d++;
//      如果月份是12月,则日为31,翻过去后,日是32,那么就翻到下一年,此时年份加1,月日为1if(m == 12 && d ==32) {y++;m = 1;d = 1;continue;}
//      如果月份是1、3、5、7、8、10,则日为31,翻过去后,日为32,那么就翻到下一个月,此时月份加1,日为1if((m == 1 ||m == 3||m==5 || m ==7 || m==8 || m==10) && d ==32) {m++;d=1;continue;}
//      如果月份是4、6、9、11, 则日为30,翻过去后,日为31,那么就翻到下一个月,此时月份加1,日为1if((m==4 || m==6 || m==9 || m==11) && d == 31) {m++;d=1;continue;}
//      如果月份是2月,则要判断当年是否为闰年,如果为闰年,则为29天,否则是28天if(m==2 && isLeapyear(y) && d == 30) {m++;d = 1;continue;}if(m==2 && !isLeapyear(y) && d == 29) {m++;d = 1;continue;}}printf("%d-0%d-%d",y,m,d);return 0;
}

==结果:==我们可以先使用样例来验证代码是否正确,最后得出结果是1799-07-16

马虎的算式

题目:
小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。
有一次,老师出的题目是:36x495=?
他却给抄成了:396x45=?
但结果却很戏剧性,他的答案竟然是对的!!
因为 36∗495=396∗45=17820。
类似这样的巧合情况可能还有很多,比如:27∗594=297∗54。
假设 a b c d e 代表 1 ~ 9 不同的 5 个数字(注意是各不相同的数字,且不含 0 )
能满足形如: ab∗cde=adb∗ce 这样的算式一共有多少种呢?
请你利用计算机的优势寻找所有的可能,并回答不同算式的种类数。
满足乘法交换律的算式计为不同的种类,所以答案肯定是个偶数。
思路:
这题是一个简单的枚举,需要注意abcde各不相同,所以在枚举中要先进行判断才能进入下一个for循环。
满足乘法交换律的算式计为不同的种类,所以答案肯定是个偶数。

#include <stdio.h>
int main(){int cnt;for(int a = 1;a<10;a++){for(int b=1;b<10;b++){if(a!=b){for(int c = 1;c<10;c++){if(c!=a && c!=b){for(int d = 1;d<10;d++){if(d!=a && d!=b && d!=c){for(int e = 1;e<10;e++){if(e!=a && e!=b && e!=c && e!=d){if((a*10+b)*(c*100+d*10+e) == (a*100+d*10+b)*(c*10+e)){cnt++;}}}}}}}}}}printf("%d",cnt);return 0;
}

结果:

第39级台阶

题目:
小明刚刚看完电影《第 39 级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是 39 级!
站在台阶前,他突然又想着一个问题:
如果我每一步只能迈上 1 个或 2 个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完 39 级台阶,有多少种不同的上法呢?
请你利用计算机的优势,帮助小明寻找答案。
思路:
注意:一共要走偶数步。

#include <stdio.h>
#include <stdlib.h>
//定义一个全局变量ans,表示上法的和
int ans;
//n为剩下的阶梯数,step为已经走的步数
void way(int n,int step) {if(n <0) {return;}if(n == 0 && step%2 ==0) {ans++;return;}way(n-1,step+1);way(n-2,step+1);
}
int main() {way(39,0);printf("%d\n",ans);return 0;
}

结果:


总结

以上就是今天的学习内容啦~
如果有兴趣的话可以订阅专栏,持续更新呢~
咱们下期再见~

【蓝桥OJ—C语言】高斯日记、马虎的算式、第39级台阶相关推荐

  1. 高斯日记、猜年龄、世纪末的星期、排他平方数、马虎的算式、振兴中华、组素数、第39级台阶

    高斯日记 题目 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后 ...

  2. 蓝桥杯 初赛题目 高斯日记

    蓝桥杯 初赛题目 高斯日记 题目描述: 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期, ...

  3. java39阶台阶_第四届蓝桥杯javaC组_第39级台阶

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  4. c语言 高斯日记,高斯日记 – 蓝桥杯

    标题:高斯日记 – 蓝桥杯 内容:2013年第四届蓝桥杯软件大赛预赛第一题. 题目描述 题目标题: 高斯日记 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日 ...

  5. 第39级台阶回溯算法c语言,五大经典算法之回溯法 - osc_9ipdey7e的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.基本概念 回溯法,又称为试探法,按选优条件向前不断搜索,以达到目标.但是当探索到某一步时,如果发现原先选择并不优或达不到目标,就会退回一步重新选择,这种达不到目的就退回再走的算法称为回溯法. 与穷 ...

  6. 【蓝桥java】递归基础之39级台阶

    题目: 小明刚刚看完电影<第39级台阶>.离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后左 ...

  7. 第三届蓝桥杯省赛---第39级台阶

    第39级台阶 小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚, ...

  8. 第 39 级台阶 蓝桥杯

    题目描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可. 小明刚刚看完电影<第 39 级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是 39 级! 站在 ...

  9. 蓝桥杯真题 13省3-第39级台阶 小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台

    问题描述 小明刚刚看完电影<第39级台阶>,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级! 站在台阶前,他突然又想着一个问题: 如果我每一步只能迈上1个或2个台阶.先迈左脚,然后 ...

最新文章

  1. ETL工具调度之中美PK
  2. 托管 非托管_如何在托管Kubernetes上还原Neo4J备份
  3. JVM 内存示意图(内存结构图/内存解析图)
  4. 【渝粤教育】国家开放大学2018年秋季 0273-22T中国现代文学 参考试题
  5. Myeclipse学习总结(2)——MyEclipse快捷键大全
  6. PHP关闭$_ENV后获取服务器参数的办法
  7. mysql学习day04-02
  8. creo不完全约束_Creo绘图1:1输出AutoCAD配置方法详解,工程图输出再不用担心尺寸乱变!...
  9. Spring Mvc:用MultiPartFile上传单个文件,多个文件
  10. csgo fps不稳定和服务器,CSGO fps不稳定,求FPS 优化设置
  11. 方程组变换+初等变换+矩阵等价+克莱姆法则
  12. 通过exif.js简单处理手机照片拍摄图片旋转问题
  13. python爬虫小工具——下载助手
  14. echarts的中国地图,点击进入省级地图,按需加载对应的省js,可返回中国地图
  15. IDEA jjsp 404_IDEA 卡住buid(编译)不动的解决办法_java
  16. VSCode打开.c文件出现中文乱码解决办法
  17. 【通信原理】学习笔记----理解信道
  18. 4D毫米波雷达天线设计
  19. 运营商大数据----三大运营商构建大数据下的企业获客应用场景
  20. python编写凯撒密码的加密函数_python实现 古典密码 凯撒密码的加密与解密

热门文章

  1. 卷积神经网络基础(最详细)+如何写代码(Pytorch)+推荐学习顺序+心得感悟
  2. 天瑞身份证识别免授权费
  3. IDEA汉化官方插件
  4. eclipse 转idea主题风格
  5. 事务到底是隔离还是不隔离?
  6. Javaweb项目 http改成https 证书生成
  7. PHP中使用Imagick实现各种图片效果实例_php技巧
  8. 121 个要写的博客创意和主题
  9. 【产业互联网周报】近20个省市明确“5G+工业互联网”政策支持;“5G+工业互联网”融合创新项目超过1100个...
  10. 祝贺研旭YXSPACE助力山东大学电气工程学院董政老师发表高水平SCI论文