洛谷:刷题(P1167,贪心,闰年)

小A在NOIP临近时发现自己需要大量刷题来准备。他计划从当前时间开始直到考试,一天24小时不间断刷题。题目难度不同,小A能预估每道题所需时间。给定所有题目的时间及当前时间、考试时间,求小A最多能完成多少题。此问题涉及闰年的判断。输入包含题目数量、每题时间以及两个时间点,输出最多能刷的题数。
摘要由CSDN通过智能技术生成

NOIP 临近了,小 A 却发现他已经不会写题了。好在现在离竞赛还有一段时间,小A决定从现在开始夜以继日地刷题。也就是说小 A 废寝忘食,一天二十四小时地刷题。
今天的日期(时间)是 yyyy 年 mm 月 dd 日 hh 时 min 分,考试的时间是 yyyy2 年 mm2 月 dd2 日 hh2 时 min2 分。这之间的所有时间小 A 都用来刷题了,那么考试之前他最多能刷多少题呢?注意哦,考虑闰年。
时间紧张小A只管数量不管质量。当然有的题目容易一些,有的题目难一些。根据小A的经验,他能一眼看出写出某一个题目需要的时间,以分钟记。
现在给出洛谷 Online Judge 的题目列表,请你挑出最多的题目使小A能在竞赛前写出来。
我们假设从远古到未来,历法的表示与现在一样。
输入格式 第一行一个整数N,表示洛谷Online Judge的题目数,N≤5000。
接下来N行,每行一个整数表示刷该题需要用的时间,以分钟记(≤10000)。(这个题本身是什么并不重要,不是么?小A已经写过题目数为0个)。
接下来两行依次是当前时间和竞赛时间。
时间给出的格式是:yyyy−mm−dd−hh:min,例如:2007−06−23−02:00,采用24小时制,每天从00:00∼23:59,年份从0000到9999。
输出格式 一行,一个整数,noip前最多刷的题目数。
输入输出样例
输入
2
1
1
2007-06-23-11:59
2007-06-23-12:00
输出
1

#include<bits/stdc++.h>       //本题的主要思路是把输入的时间差求出,排序题目所用时间,从小开始选择,直到时间不够
using namespace std;           
int a[10000];
int b[12]={
   31,28,31,30,31,30,31,31,30,31,30,31}; //存12个月日期
int fun1(int ,int );     //用来求出0年1月1日到现在要多加几天(共有几个闰年)
int fun(int year1,int year2,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值