zoukankan      html  css  js  c++  java
  • 牛牛的闹钟

    题目:

    牛牛总是睡过头,所以他定了很多闹钟,只有在闹钟响的时候他才会醒过来并且决定起不起床。从他起床算起他需要X分钟到达教室,上课时间为当天的AB分,请问他最晚可以什么时间起床

    输入描述:

    每个输入包含一个测试用例。 
    每个测试用例的第一行包含一个正整数,表示闹钟的数量N。 
    接下来的N行每行包含两个整数,表示这个闹钟响起的时间为分。 
    接下来的一行包含一个整数,表示从起床算起他需要分钟到达教室。 
    接下来的一行包含两个整数,表示上课时间为时分。 
    数据保证至少有一个闹钟可以让牛牛及时到达教室。

    输出描述:

    输出两个整数表示牛牛最晚起床时间。

    样例:

    in:
    3 
    5 0 
    6 0 
    7 0 
    59 
    6 59
    
    out:
    6 0

    注意到校时间-x后的处理即可。

    AC代码:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 struct node{
     5     int a,b;
     6 }a[110],temp,res;
     7 
     8 int cmp(node a,node b){
     9     if(a.a==b.a)
    10     return a.b<b.b;
    11     else
    12     return a.a<b.a;
    13 }
    14 
    15 int main(){
    16     int n,t;
    17     cin>>n;
    18     for(int i=0;i<n;i++){
    19         cin>>a[i].a>>a[i].b;
    20     }
    21     cin>>t;
    22     cin>>temp.a>>temp.b;
    23     sort(a,a+n,cmp);
    24     temp.b-=t;
    25     if(temp.b<0){
    26         int x=0-temp.b;
    27         temp.a-=x/60+1;
    28         temp.b=60-x%60;
    29     }
    30     //cout<<temp.a<<" "<<temp.b<<endl;
    31     for(int i=n-1;i>=0;i--){
    32         if(a[i].a<temp.a||a[i].a==temp.a&&a[i].b<=temp.b){
    33             cout<<a[i].a<<" "<<a[i].b<<endl;
    34             break;
    35         }
    36     }
    37     return 0;
    38 }
  • 相关阅读:
    DateUtil(比较两个日期是否是同一天)
    用过的读写
    小笔记
    日志解析LogParse启动参数配置
    wow经典台词
    Quartz资源收藏
    Quartz Job基本示例
    已知两点坐标,及在从其中一点开始移动的距离,求移动到的坐标
    如何为SUSE配置IP地址,网关和DNS
    详解Linux Initrd
  • 原文地址:https://www.cnblogs.com/Kiven5197/p/8718297.html
Copyright © 2011-2022 走看看