2020牛客暑期多校训练营(第二场)
D Duration
题目大意
给你同一天的两个时刻,请你计算这两个时刻中间相隔多少秒?
题目分析:
注意一下输入的格式。
代码
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int h,m,s,h1,m1,s1;
scanf ("%2d:%2d:%2d",&h,&m,&s);
scanf ("%2d:%2d:%2d",&h1,&m1,&s1);
cout<<abs((s1-s)+(m1-m)*60+(h1-h)*3600);
return 0;
}
F Fake Maxpooling
题目大意
给你一个矩阵的行数\(n\)和列数\(m\)以及一个整数\(k\),其中矩阵\(A_{ij}=lcm(i,j)\),其中\(lcm\)是最小公倍数的简写(the least common multiple),求每个大小为\(k*k\)的子矩阵的最大值的和。
题目分析:
对于求区间最值的问题,可以使用单调队列求解,先横着计算每个长度为k的区间的最大值,然后竖着计算每个长度为k的区间的最大值,最后求和。
代码
单调队列不会实现,待补。

浙公网安备 33010602011771号