试题 历届试题 日期问题
发布日期:2021-06-29 22:18:12
浏览次数:2
分类:技术文章
本文共 2157 字,大约阅读时间需要 7 分钟。
试题 历届试题 日期问题 资源限制时间限制:1.0s 内存限制:256.0MB问题描述 小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在很多可能的日期与其对应。 比如02/03/04,可能是2002年03月04日、2004年02月03日或2004年03月02日。 给出一个文献上的日期,你能帮助小明判断有哪些可能的日期对其对应吗?输入格式 一个日期,格式是"AA/BB/CC"。 (0 <= A, B, C <= 9)输出格式 输出若干个不相同的日期,每个日期一行,格式是"yyyy-MM-dd"。多个日期按从早到晚排列。样例输入02/03/04样例输出2002-03-042004-02-032004-03-02数据规模和约定 峰值内存消耗(含虚拟机) < 256M CPU消耗 < 1000ms 请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。 注意: main函数需要返回0; 只使用ANSI C/ANSI C++ 标准; 不要调用依赖于编译环境或操作系统的特殊函数。 所有依赖的函数必须明确地在源文件中 #include不能通过工程设置而省略常用头文件。 提交程序时,注意选择所期望的语言类型和编译器类型。
#include#include using namespace std;struct node{ int yy,mm,dd;}t[100000],t1[100000];bool cmp(struct node n1,struct node n2){ if(n1.yy!=n2.yy) return n1.yy<=n2.yy; else if(n1.mm!=n2.mm) return n1.mm<=n2.mm; else return n1.dd<=n1.dd;}int main(){ int i=0,j=0,n=0,y=0,m=0,d=0; //如果这年是闰年,二月天数是29,不是闰年的话,二月天数是28; int day_month[100]={ 0,31,28,31,30,31,30,31,31,30,31,30,31}; scanf("%d/%d/%d",&y,&m,&d); t[0].yy = 2000+y,t[0].mm = m,t[0].dd = d; t[1].yy = 1900+y,t[1].mm = m,t[1].dd = d; t[2].yy = 2000+d,t[2].mm = y,t[2].dd = m; t[3].yy = 1900+d,t[3].mm = y,t[3].dd = m; t[4].yy = 2000+d,t[4].mm = m,t[4].dd = y; t[5].yy = 1900+d,t[5].mm = m,t[5].dd = y; sort(t,t+6,cmp); int p=0; for(i=0;i<6;i++) { //2000年开头的; if(t[i].yy>=1960&&t[i].yy<=2059) { //判断是否为闰年; //如果是闰年; if(t[i].yy%4==0||t[i].yy%100!=0&&t[i].yy%400==0) { if(t[i].mm>=1&&t[i].mm<=12) { day_month[2] = 29; if(t[i].dd>=1&&t[i].dd<=day_month[t[i].mm]) { t1[p].yy = t[i].yy; t1[p].mm = t[i].mm; t1[p].dd = t[i].dd; p++;// printf("%4d-%02d-%02d\n",t[i].yy,t[i].mm,t[i].dd); } } } else { if(t[i].mm>=1&&t[i].mm<=12) { day_month[2] = 28; if(t[i].dd>=1&&t[i].dd<=day_month[t[i].mm]) { t1[p].yy = t[i].yy; t1[p].mm = t[i].mm; t1[p].dd = t[i].dd; p++;// printf("%4d-%02d-%02d\n",t[i].yy,t[i].mm,t[i].dd); } } } } } //去掉重复的日期数据; for(i=0;i
转载地址:https://dingshijie.blog.csdn.net/article/details/108987304 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月12日 09时24分45秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
浅析:正则表达式修改字符串数字“10000”为“10,000”
2019-04-30
浅析chrome新特性,追溯源头至HSTS
2019-04-30
记一次曲折的Debug经历
2019-04-30
Impala支持Google云存储开发笔记
2019-04-30
如何在Apache JIRA中搜索issue
2019-04-30
Impala-shell相关源码笔记
2019-04-30
Windows下配置Storm源码阅读环境(vim+ctags)
2019-04-30
Storm源码细读——Nimbus启动
2019-04-30
Storm源码细读——Supervisor启动
2019-04-30
scrapy 排错记录
2019-04-30
Titan线程隔离的验证
2019-04-30
Titan源码阅读——如何透明地支持多线程事务隔离
2019-04-30
HDOJ 2578 Dating with girls(1)
2019-04-30
HDOJ 2199 Can you solve this equation?
2019-04-30
uva725 - Division
2019-04-30
HDOJ1238 Substrings
2019-04-30
ACM路上的一大失误
2019-04-30
CodeForces 628A Tennis Tournament
2019-04-30