首页 > Let's Play Curling
头像 微澜尛雨
发表于 2021-05-13 21:59:47
题目考点:离散化(其实怎么写都行,以个人目前能力感觉离散化+前缀和比较好上手) 题目大意:一条线上红蓝两种石头随机排列,易知存在若干点使得这些点前后均为红色石头,且绝对不含蓝色石头,找到这些点中的前后红色石头数量最多的那个点,输出最大数量 题目分析:如图,我们可以确定a[4]和a[5]之间的点,前后 展开全文
头像 菜鸡aaa
发表于 2023-08-05 11:28:07
1、a[N]保存所有红色石头的位置,用b[N]保存所有蓝色石头的位置 2、对a[N]和b[N]都进行sort排序 3、遍历每两个相邻蓝色石头之间有多少个红色石块,最多的那个即为答案 4、需要注意的是第一个蓝色石头之前的所有红色石块也可以是答案,最后一块蓝队石头之后的红色石头也可以是答案 #inclu 展开全文
头像 在刷题的单身狗很开心
发表于 2023-09-15 14:02:57
算是一道考验思维的题吧,关键在于看出来如果要距离红球比篮球近的话那必然不能跨越篮球。那么就需要红球扎堆,也就是说红球扎堆的越多就有更多的胜利。 那么就到了统计红球的个数了。可以使用前缀和来求解。 #include <bits/stdc++.h> using&nbs 展开全文
头像 Y_J_Y
发表于 2022-08-05 13:45:19
emmm,当时一看到这道题,脑子中就有了一个比较显然的方法,但是因为方法自我感觉太简单了,不敢使用没然后看了一眼题解,woc,一篇用了map(用了奇奇怪怪的指针(请允许我一个只会简单算法的cb,map并不是用的很顺)),另一篇使用了堆和一些STL的用法加上前缀和,然后我心里一惊,我的方法难道要暴毙了 展开全文
头像 默默然诶
发表于 2022-07-27 10:02:54
#include<bits/stdc++.h> using namespace std; map<int,int> mp; map<int,int> cnt; int T,n,m; int main() { cin >> T; 展开全文