openjudge------ 日期的种类题目
描述
TXT is a vegetable chicken,so 出题什么的完全不会啊!
干脆直接从网络上copy一题下来吧。
小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在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-04
2004-02-03
2004-03-02
思路:
因为日期只有三类,所以只需要分成三类讨论,然后对每一种结果判断是否符合,并且排序后输出就可以了。
#include<stdio.h>
#include<string.h>
int one[]={,,,,,,};
int two[]={,,,};
int get(char ch[],int aa,int bb){
return (ch[aa]-'')*+ch[bb]-'';
}
int run(int n){
if((n% == &&n% != )||(n% == )){
return ;
}
return ;
}
int in(int n,int a[],int len){
int i;
for(i=;i<len;i++){
if(a[i]==n){
return ;
}
}
return ;
}
int can(int a,int b,int c){ //检查以a,b,c为年月日合法不
int temp;
if(a>=){
temp = +a;
}else{
temp = +a;
}
if(b>=&&b<=){
if(c>=&&c<=){
if((c==&&!(run(temp)&&b==))||(c==&&!(!run(temp)&&b==))){
return ;
}
else if(c==&&!in(b,one,)){
return ;
}
else if(c==&&!in(b,two,)){
return ;
}else{
return ;
}
}else{
return ;
}
}else{
return ;
}
}
void change(int &a,int &b,int &c){
int max = a>b?a:b;
int min = a>b?b:a;
max = max>c?max:c;
min = min>c?c:min;
b = a+b+c-max-min;
a = min;
c = max;
}
int main(){
char str[];
gets(str);
int a,b,c,t1=,t2=,t3=;
a = get(str,,);
b = get(str,,);
c = get(str,,);
if(can(a,b,c)){
if(a>=)
t1 = +a*+b*+c;
else
t1 = +a*+b*+c;
}
if(can(c,a,b)){
if(c>=)
t2 = +c*+a*+b;
else
t2 = +c*+a*+b;
}
if(can(c,b,a)){
if(c>=)
t3 = +c*+b*+a;
else
t3 = +c*+b*+a;
}
if(a==b){
t3 = ;
}
if(a==b&&b==c){
t2 = ;
}
change(t1,t2,t3);
if(t1)
printf("%0.2d-%0.2d-%0.2d\n",t1/,t1%/,t1%);
if(t2)
printf("%0.2d-%0.2d-%0.2d\n",t2/,t2%/,t2%);
if(t3)
printf("%0.2d-%0.2d-%0.2d\n",t3/,t3%/,t3%);
return ;
}
openjudge------ 日期的种类题目的更多相关文章
- Java日期的格式String类型GMT,GST换算成日期Date种类
请尊重他人的劳动成果.转载请注明出处:Java日期格式化之将String类型的GMT,GST日期转换成Date类型 http://blog.csdn.net/fengyuzhengfan/articl ...
- 二分 题目 压缩打包 Special Judge? 不不不 当然不是
http://noi.openjudge.cn/ch0111/ No 题目 分数 01 查找最接近的元素 10 3176 02 二分法求函数的零点 10 2181 03 矩形分割 10 1420 04 ...
- OpenJudge计算概论-比饭量【枚举法、信息数字化】
/*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...
- DB2中字符、数字和日期类型之间的转换
DB2中字符.数字和日期类型之间的转换 一般我们在使用DB2或Oracle的过程中,经常会在数字<->字符<->日期三种类 型之间做转换,那么在DB2和Oracle中,他们分别 ...
- OpenJudge / Poj 1003 Hangover
链接地址: Poj:http://poj.org/problem?id=1003 OpenJudge:http://bailian.openjudge.cn/practice/1003 题目: Han ...
- OpenJudge 2737 大整数除法
链接地址:http://bailian.openjudge.cn/practice/2737/ 题目: 总时间限制: 1000ms 内存限制: 65536kB 描述 求2个大的正整数相除的商 输入 第 ...
- OpenJudge 2980 大整数乘法
链接地址:http://bailian.openjudge.cn/practice/2980/ 题目: 总时间限制: 1000ms 内存限制: 65536kB 描述 求两个不超过200位的非负整数的积 ...
- OpenJudge / Poj 1044 Date bugs C++
链接地址: Poj:http://poj.org/problem?id=1044 OpenJudge:http://bailian.openjudge.cn/practice/1044/ 题目: 总时 ...
- OpenJudge 2680 化验诊断 C++
链接地址:http://bailian.openjudge.cn/practice/2680 题目: 总时间限制: 1000ms 内存限制: 65536kB 描述 下表是进行血常规检验的正常值参考范围 ...
随机推荐
- C++ 一些特性
1. 初始化列表std::initializer_list,头文件<initializer_list> C++11提供了模板类template<class T> class ...
- 记一次生产环境thrift服务的配置问题
问题现象 有客户反馈我们的产品有时反应很慢,处理会出现超时. 问题分析过程 1.第一反应可能是用户增加,并发量太大了,询问了运营,最近用户注册数据并没有猛增. 2.分析access日志,发现有隔一段时 ...
- SQL Server 深入解析索引存储(堆)
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/索引体系结构/堆 概述 本篇文章是关于堆的存储结构.堆是不含聚集索引的表(所以只有非聚集索引的表也是堆).堆的 sys.parti ...
- JavaScript的文档对象模型DOM
小伙伴们之前我们讲过很多JavaScript的很多知识点,可以点击回顾一下: <JavaScript大厦之JS运算符>: <JavaScript工作原理:内存管理 + 如何处理4个常 ...
- 微信小程序支付接入实战
1. 微信小程序支付接入实战 1.1. 需求 最近接到一个小程序微信支付的需求,需要我写后台支持,本着能不自己写就不自己写的cv原则,在网上找到了些第三方程序,经过尝试后,最后决定了这不要脸作者的 ...
- Spring autowire自动装配 ByType和ByName
不使用自动装配前使用的是类的引用: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=& ...
- C语言中关键字restrict的概念,使用范围,例子
概念: restrict,C语言中的一种类型限定符(Type Qualifiers),用于告诉编译器,对象已经被指针所引用,不能通过除该指针外所有其他直接或间接的方式修改该对象的内容. 渊源: res ...
- Python - Fabric简介
1 - Fabric Fabric是一个Python的库,提供了丰富的同SSH交互的接口,可以用来在本地或远程机器上自动化.流水化地执行Shell命令. 非常适合用来做应用的远程部署及系统维护.简单易 ...
- Python档案袋( Sys 与 Import 模块)
Sys模块: 获取Python有关的环境变量: import sys #得到Python的一些相关路径,环境变量 #其中site-packages目录存放的是一些第三方库 #其中lib目录存放的是一些 ...
- 毕业不到一年,绩效打了个D!
周末了,和大家来聊聊程序员工作态度的问题. 说说栈长的事迹吧,这是好多年前的事了,那时候,栈长才毕业不到一年,那次绩效打了个D!事后,我很气愤啊,我那时还在博客上写文章怒骂了部门经理,现在想起来,真是 ...