题目详情:

快手是比较火的一款短视频app软件,里面每天都会更新一些有趣的视频,因此它的出现成为了我们打发时间的一种方式,但是有些同学进去看到有趣的视频就会停不下来,导致沉迷于此。当你进入和退出快手app的时候它的后台都有一个记录数据,即进入快手的时间和退出的时间。你的班主任想知道你们班每位同学每天刷快手的情况,于是就向快手平台要了你们班的后台记录数据,但是这些数据都是零散的,你的班主任让你帮他将每一个同学刷视频的时间按从小到大排序。

输入格式:
在第一行给两个整数n和m(1≤n≤1000,0≤m≤10^4),n代表你们班上的人数,m代表数据的条数,接下来m行每行给一组数据,格式为:学号
进入时间 退出时间,你们班的学号为从0~n-1编号并且为三位数。题目保证给出的所有时间均是同一天之内的。

输出格式: 将每个同学一天中刷快手的总时间从小到大排序输出(若出现并列情况,则按学号从小到大输出),输出格式为:学号
时间,最后输出最长的时间。

注:输出和输出的学号为三位数(不足三位补前导0),输出的时间格式为:00:00:00

分析:定义一个结构体存储每个学生的学号和刷快手时间,最后用排序即可。
对于时间的计算,由于是字符串,我们可以写一个函数把字符串转为整数(所刷时间,单位是 秒),最后输出的时候,再把时间(秒)转为字符串,
秒转为时:分:秒通过求余(%)和整除(/)很好操作
值得注意的是,这个题还有个很坑的“卡点”,就是存在 n个学生信息没有都给你,也就是有些学生没有刷过快手,所以输入数据没给你,但是最后需要你输出!所以我们还需要一个数组来记录 学生是否出现过,对于没有出现的学生,由于时间都是00:00:00,直接从学号从小到大即可。注意需要满足3位(不足加前置0),我们可以通过printf("%03d"),轻松实现。

AC代码:

#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
#include<map>
#include<set>
using namespace std;
typedef long long ll;
const int N=1e5+5;
int n,m,f[N];
struct node{int name;//这是学号!考试的时候看错了,以为是姓名。。。int time;
}a[N];
int to_time(string t){int h=0,m=0,s=0;for(int i=0;i<2;i++)h=10*h+t[i]-'0';for(int i=3;i<5;i++)m=10*m+t[i]-'0';for(int i=6;t[i];i++)s=10*s+t[i]-'0';return 3600*h+60*m+s;
}
string to_st(double t){int h,m,s;h=(int)t/3600;m=(int)t%3600/60;s=t-3600*h-60*m;char ans[20];//时间格式化字符串sprintf(ans,"%02d:%02d:%02d",h,m,s);string tt=ans;return tt;
}
bool cmp(node x,node y){if(x.time==y.time)return x.name<=y.name;return x.time>y.time;
}
int main(){cin>>n>>m;int k=0;while(m--){string t1,t2;int name;cin>>name>>t1>>t2;f[name]=1;//记录这个学生已经出现int j;//先看已知的学生中,有没有这个人,有点话,时间累加。for(j=0;j<k;j++)if(a[j].name==name){a[j].time+=to_time(t2)-to_time(t1);break;}//新建学生信息if(j>=k){a[k].name=name;a[k++].time=to_time(t2)-to_time(t1);}}sort(a,a+n,cmp);for(int i=0;i<k;i++){printf("%03d",a[i].name);cout<<" "<<to_st(a[i].time)<<endl;}for(int i=0;i<n;i++){if(!f[i]){//没有在input中出现过printf("%03d",i);cout<<" 00:00:00\n";}}    return 0;
}

你今天刷快手了吗(字符处理)相关推荐

  1. 7-2 你今天刷快手了吗

    快手是比较火的一款短视频app软件,里面每天都会更新一些有趣的视频,因此它的出现成为了我们打发时间的一种方式,但是有些同学进去看到有趣的视频就会停不下来,导致沉迷于此.当你进入和退出快手app的时候它 ...

  2. LeetCode/LintCode 题解丨一周爆刷字符串:旋转字符数组

    描述 给定一个字符数组 s 和一个偏移量,根据偏移量原地旋转字符数组(从左向右旋转). offset >= 0 s 的长度 >= 0 原地旋转意味着需要在函数中更改字符数组 s.你不需要返 ...

  3. auto实现自动刷快手极速版金币功能

    auto实现自动刷快手极速版金币功能* 配置环境 电脑端 vscode 扩展 手机端 小米10 免root 需要下载 autojs function texden(){text('领福利').find ...

  4. python自动化刷视频赚钱-自动化测试:如何自动化的刷快手极速版的视频

    近两年短视频出现了井喷式的发展,我们熟知常见的有抖音.快手.微视.火山小视频等,看短视频已经成了年轻人的习惯,每天闲暇的时间就会拿出手机刷刷刷,打发无聊的时间. 其实,抖音和快手都推出了极速版,在娱乐 ...

  5. LeetCode刷题笔记 字符串 字符串匹配

    28 实现 strStr() 判断一个字符串是不是另一个字符串的子字符串,并返回其位置. 输入一个母字符串和一个子字符串,输出一个整数,表示子字符串在母字符串的位置,若不存在则返回-1. 输入:hay ...

  6. Python之抖音快手代码舞--字符舞

    先上效果,视频敬上: 字符舞: 代码舞 源代码: video_2_code_video.py import argparse import os import cv2 import subproces ...

  7. 【测开实战】adb+python自动化刷快手/抖音视频来赚金币

    前置条件:电脑配置adb命令环境 import threading import subprocess import time import datetime import re# 支持多个手机同时执 ...

  8. python刷快手_抖音+快手 自动化刷视频脚本(python+adb)

    最近在家闲着也是闲着,写了一下python自动化脚本,进行刷视频的操作.(下雨天打孩子,闲着也是闲着) 1.环境 python+adb工具 2.安装手机一部 数据线一部 3.进入调试模式或者开发者模式 ...

  9. python+appium+夜神模拟器刷快手极速版金币套现,帮你赚够早餐钱

    环境准备 一.准备python环境 二.配置好appium库 三.准备好工具:1.Android SDK 2.Appium Server 3.JDK 4.夜神模拟器 原理 模拟人的手指去点击手机,打开 ...

最新文章

  1. 优点 spark_spark(一)
  2. 日活4000万,占据22%手游时长份额的竟然是……(文末有彩蛋)
  3. linux查看java运行日志,Linux下查看日志用到的经常使用命令
  4. 语言高精度算法阶乘_JavaScript中的算法(附10道面试常见算法题解决方法和思路)...
  5. lambd 创建线程_连接到Qt信号的Python lambda函数在其他线程中创建时不运行
  6. 循环执行次数 n(n+1)/2
  7. java初始块,java初始代码块
  8. dspic flash不够后,选择优化等级
  9. 计算机ip 地址异常,电脑显示IP地址错误怎么办|电脑无法上网提示IP地址错误的解决方法...
  10. C# AHP层次分析法:一致性校验
  11. iOS开发工程师(SDK),U3D主程,制作人 招聘
  12. Win10 64位下解决 NVIDIA 显示设置不可用(小白问题)
  13. jzoj. 1285. 奶酪厂
  14. 服务器添加永久静态路由
  15. Springboot毕设项目地方特色美食小吃分享平台6iqqq(java+VUE+Mybatis+Maven+Mysql)
  16. linux spool目录 删除,Linux知识:/var/spool/clientmqueue 下垃圾文件删除
  17. 高帧率扑克牌识别技术详解一(可用于车牌识别,字符识别,人脸检测,验证码识别等等成熟领域)
  18. OpenCV简单实现图片素描
  19. 破解DELL BIOS开机密码,拔电池放电不好使
  20. Python中datetime库的用法

热门文章

  1. wx.downloadFile坑点
  2. 手机上如何使用Termux当终端,以及开启SSH服务的步骤
  3. C/C++ Linux 后台服务器开发高级架构师学习知识路线总结
  4. 使用gltf-pipeline转换gltf、glb模型文件
  5. 长 三 角 制 造 - 香 港 服 务
  6. 网吧大哥服务器维修,《绝地求生》服务器又崩溃!网吧老板快要哭了
  7. jfinal整合IJPay paypal支付
  8. 华为推送 坑点 自定义intent
  9. 机房监控系统解说—防火墙篇
  10. ZPL 打印条码、二维码及小票(中文/汉字),生成条码、二维码图片【Asp.Net】-含示例代码