王道计算机考研机试指南刷题笔记-自用
| 写在开头
前两周磨磨唧唧把第二章暴力求解枚举部分的例题和习题都AC了,思路都不太难,找到规律很快就能写出来,想着一定要写刷题笔记,把coding时遇到的困难都记录下来,方便以后复习,却也一直未曾动笔。21号考研成绩就要出来了,最近忙着找工作的事也没刷题,今晚继续,终于决定记录下来。
知道自己的coding一直是硬伤,所以更要比别人努力一点。
| 2.2 模拟
2.日期问题
2.6 今天的第几天?(清华大学复试上机题)
今年的第几天?_牛客题霸_牛客网 (nowcoder.com)
1.我的思路
看到日期的年月日问题,首先想到了要判断输入的年份是否是闰年,判断标准如下:
能被400整除 || 能被4整除但不能被100整除
不同月份天数不同,没想到可以用数组记录闰、平年的月份
2.想不出来直接看答案
①预处理:程序真正处理输入输出数据之前,预处理出所有月份的天数并保存。这样真正处理时只需要O(1)的时间复杂度就能读出保存的数据。(空间换时间)
用二维数组记录 (把列写成13,这样下标和月份能刚好对上)
int day [2][13] = {
{0,31,28,31,30,31,30,31,31,30,31,30,31}, // 平年每个月份的天数
{0,31,29,31,30,31,30,31,31,30,31,30,31} // 闰年每个月份的天数
}
②处理数据:输入年,月,日三个整数
判断是否是闰年,根据返回结果判断使用预处理中的哪一行月份数据。
③for循环累加该月份之前的天数
④循环结束,加上该月份的天数,打印结果。
AC。
3.附上源代码
#include <stdio.h>
#include <stdbool.h>// 预处理
int day[2][13] = {
{0,31,28,31,30,31,30,31,31,30,31,30,31},
{0,31,29,31,30,31,30,31,31,30,31,30,31}
};// 判断是否是闰年
bool isLeapYear(int y){return ( y%400==0 || ((y%4==0)&&y%100!=0) );
}int main() {int Y,M,D;while(scanf("%d %d %d\n",&Y,&M,&D)!=EOF) {int d=0;// 判断Y年是否是闰年,不是就调用预处理中的第一行数据计算,否则调用第二行数据int row = isLeapYear(Y);// 累加月份之前的天数for ( int i = 0 ; i < M ; i++ ) {d += day[row][i];}// 累加本月天数d += D;printf("%d\n",d);}}
王道计算机考研机试指南刷题笔记-自用相关推荐
- 王道计算机考研机试指南刷题笔记-自用7
目录 例题4.4 统计字符(浙大复试上机题) 例题4.5 字母统计(上交复试上机题) 第5章 数据结构一 5.1 向量 例题5.1 完数与盈数(清华复试上机题) 5.2 队列 例题5.2 约瑟夫问题N ...
- 王道计算机考研机试指南刷题笔记-自用3
| 2.2 模拟 3.其他模拟 例题2.9 KY25(清华大学复试上机题) 剩下的树__牛客网 (nowcoder.com) 1.总结 遇到的坑:直接把给出的区间右端点值减去左端点值+1得到这个区间移 ...
- 王道计算机考研机试指南二刷笔记-自用8
目录 写在开头 第3章 排序与查找 3.1 排序 总结 3.2 查找 总结 写在开头 一刷到后面断更了,发现每题都写太浪费时间了. 一刷总结:数学问题.贪心.递归分治.数据结构二基本都刷完了,图论只刷 ...
- 王道计算机考研机试指南自用刷题笔记-自用6
目录 习题3.5 找最小数(北邮复试上机题) 习题3.6 打印极值点下标(北大复试上机题) 习题3.7 找位置(华科复试上机题) 第4章 字符串 4.1 字符串 4.2 字符串处理 4.1 特殊乘法( ...
- 王道计算机考研机试指南自用刷题笔记-自用5
3.2 查找 例题3.4 找x(哈工大复试上机题) 找x_牛客题霸_牛客网 (nowcoder.com) 1.思路 简单题,定义一个数组存储输入的数字,定义一个flag标识是否找到x,对数组进行一次遍 ...
- 王道出版的机试指南_《王道论坛计算机考研机试指南》试读版.pdf
<王道论坛计算机考研机试指南>试读版 王道论坛 王道论坛计算机考研机试指南 王道论坛 2013.01.06 写在前面的话 各位王道的小崽子们,今天你们考完初试了,感觉解放了吧?轻松了吧?无 ...
- 计算机考研机试指南(八)——数学问题
机试指南 cha4 数学问题 % 1 #include <iostream> 2 #include <stdio.h> 3 #include <stdlib.h> ...
- 王道出版的机试指南_王道论坛计算机考研机试指南 四 排版题
例2.7 输出梯形 (九度教程第14题) 时间限制:1秒 **内存限制:32兆 ** 特殊判题:否 题目描述: 输入一个高度h,输出一个高为h,上底边为h的梯形. 输入: 一个整数h(1<=h& ...
- 王道论坛计算机考研机试指南怎么样,王道论坛计算机考研机试指南 二 日期类问题...
二日期类问题 例2.3 日期差值 (九度教程第6题) 时间限制:1秒 **内存限制:32兆 ** 特殊判题:否 题目描述: 有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数 ...
最新文章
- html %3c% page,page.html
- sql语句数据行操作-虽然一般不用
- nginx源码分析之网络初始化
- git 修改上次提交信息 与 撤销此操作.
- Java是先难后易吗_在解决问题的时候,是先难后易还是先易后难?
- jpa原生query_Spring Data JPA原生SQL查询
- 《java程序设计》结对编程-四则运算整体总结
- ShardingSphere JDBC 分库分表 读写分离 数据加密
- 使用Doxygen + graphviz生成Unity 3d的UGUI类图
- 1.OAuth 简介
- 线程池原理_JAVA并发编程:详解线程池的工作原理
- 条码打印软件如何实现二维码内容换行显示 1
- 神舟计算机主板bios,最详细的各种主板bios设置方法
- 我用Vue3+TS实现了一个新年倒计时组件,适用于各种场景
- 银行不良贷款很大一部分是诈骗的结果:CAG
- java 好和不好的形容词 英语怎么说_常用英语形容词,不好的形容事情的形容词英语。...
- mysql admin php_apache+php+mysql+phpadmin 服务环境搭建
- 借助Jackson的JsonTypeInfo注解实现多态类的解析
- 计算机相关知识——阻塞和非阻塞,同步和异步等相关概念
- CSDN学习相关页面探讨