首页 > 其他分享 >luogu P7632 题解

luogu P7632 题解

时间:2022-09-24 21:57:58浏览次数:54  
标签:48 int 题解 60 th luogu put P7632 out

一.思路

我们可以先把时间换成以为单位的,然后在枚举每一秒时谁领先。

二.重要点

  • 我们可以用 string 读入时间,再用一个函数以为单位提取出来(在程序中的函数名: tiqu )。

  • 如果双方分数是一样的,那么谁都不领先(在程序中的函数名: out_put )。

  • 输出的时候要填充 \(0\) ,就建一个函数。

三.实现

#include<bits/stdc++.h>
using namespace std;
int n,p,fen[3],shijian[110][3],ta,tb;string s;
void tiqu(string x,int th,int player){// x ->读入的时间 th ->第几个(i) player ->哪一方的球了
    shijian[th][player]=int(x[0]-48)*600+int(x[1]-48)*60+int(x[3]-48)*10+int(x[4]-48);
}//转格式( x[0] 是分钟的十位,x[1] 是分钟的个位,x[3] 是秒的十位,x[4]是秒的个位)
void out_put(int t){
    int x=t/60,y=t%60;
    if(x/10==0) cout<<0;//若 x (分钟)是个位数,要输出 '0'
    cout<<x<<":";
    if(y/10==0) cout<<0;//若 y (秒钟)是个位数,也要输出 '0'
    cout<<y<<endl;
}//输出 
int main(){
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>p>>s;
        int op=1;
        if(p==1) op=2;
        tiqu(s,i,p);//转换为以秒为单位的时间
        shijian[i][op]=4800;//为了防止在 0 秒进球,然后有BUG
    }
    for(int i=0;i<60*48;i++){
        fen[0]=fen[1]+fen[2];
        if(shijian[fen[0]][1]==i) fen[1]++;
        if(shijian[fen[0]][2]==i) fen[2]++;
       //判断在这一秒是否得分
        if(fen[1]>fen[2]) ta++;
        if(fen[2]>fen[1]) tb++;
      //判断分数上的领先
    }//枚举每 1 秒
    out_put(ta);//输出 a 方的领先时间
    out_put(tb);//输出 b 方的领先时间
    return 0;
}

标签:48,int,题解,60,th,luogu,put,P7632,out
From: https://www.cnblogs.com/lzx19/p/sol-lg-p7632.html

相关文章

  • NOIP2018 day1 题解
    心血来潮看了看18年的联赛,感觉自己进步很大==T1对于一个“波”来说,显然需要的次数为最大的数(波峰),对于多个“波”,就每次记录一下从波底到波峰的高度差即可,这可以用差分简......
  • SOJ1626 方珍 题解
    传送门题意给定一个\(n×n\)的方阵,其中第\(i\)行为\(A_{i,1},A_{i,2},...,A_{i,n}\)。对于\(A_i\)的所有区间,设\(f_i\)为其中第\(k_i\)大的\(mex\)值。给......
  • JOIG 2021/2022 F 题解
    链接题意:给定一张\(n\)个点,\(m\)条边的无向图(保证没有重边、自环)。边有两种,\(type=1\)时,经过后手中的数\(-1\);\(type=2\)时,经过后手中的数\(\div2\)下取整。给定......
  • CF1701E Text Editor 题解报告
    题意翻译给定两个字符串\(S,T\),初始时光标在串\(T\)尾部,你可以进行以下操作:\(\texttt{left}\):将光标向左移动一个字符,如光标在字符串最左侧则不移动。\(\texttt{ri......
  • CF Round 822 Div2 题解
    比赛链接A题SelectThreeSticks(签到)给定\(n\)根木棒,第\(i\)根木棒的长度为\(a_i\)。现在我们可以进行操作,每次操作选定一根木棒,将其长度增高或减少1。问至少需......
  • CF 教育场 135 题解
    比赛链接A题ColoredBalls:Revisited(签到)给定\(n\)种颜色的球,其中颜色\(i\)的球的数量是\(cnt_i\),保证\(\sum\limits_{i=1}^ncnt_i\)是奇数。在一次操作中,我......
  • Codeforces Round #822 Div.2 整场题解
    目前还有E,F没有更新。A.SelectThreeSticks直接对\(a\)排序,选出来的木棍一定是相邻三项,都往中间靠更优。B.Bright,Nice,Brilliant最优方案就是每一行第一个......
  • 牛客题解 装进肚子
    链接:https://ac.nowcoder.com/acm/problem/14721来源:牛客网题解作者岛田小雅这道题刚拿到手,就感觉是个很简单(事实证明并不是很简单)的贪心。虽然我不是很会判断贪心的......
  • pycharm打字卡顿问题解决
    问题描述:我在pycharm中使用的远程服务器中的环境,工程也是本机映射到远程环境中,在某次断网以后,再次使用就变得非常卡,具体现象就是我码字要等,整个pycharm就无法点击,过了5秒以......
  • P1347 排序 题解
    题干交了8次,下载了3个测点.....首先这个题,很容易想到用拓扑如果有“X$<$Y”,就建立一条从X到Y的有向边要考虑到,如果排序成立,必须满足入度为0的点只有一个并且出度为0的......