首页 > [SCOI2009]生日礼物
头像 shyyhs
发表于 2020-08-28 12:47:38
直接双指针模拟就好了,然后拿ans统计答案的min.注意变量之间别混淆. //orz代码构思太弱了... #include <bits/stdc++.h> using namespace std; const int N=1e6+5; typedef long long ll; stru 展开全文
头像 SuperShocker
发表于 2021-10-14 15:59:22
本题采用了尺取法,具体思路如下: 设置一个结构体存放每个珠子的种类和位置,在读入珠子的数据后,将珠子按照位置的前后进行排序 设置两个指针left和right来表示送出去彩带的两个端点 left不动,right向后遍历,每次遍历到的珠子类型存放到kind数组中,kind[i]表示第i类珠子的个数,k 展开全文
头像 hnust_yangyanjun
发表于 2020-08-27 21:51:55
题意:有一个有n个彩珠、m种彩珠的彩带,使每一种彩珠都包含的最小长度是多少? 思路:离散+尺取法 代码: #include <bits/stdc++.h> typedef long long ll; using namespace std; const ll inf=99824435 展开全文
头像 horz
发表于 2020-08-14 17:13:58
写在前面 没给出数据范围,差评。 补充一下数据范围: 「数据规模」对于50%的数据, N≤10000;对于80%的数据, N≤800000;对于100%的数据,1≤N≤1000000,1≤K≤60,0≤彩珠位置<2^31。 分析 考虑尺取法,说白了就是双指针。 先对 x 排个序,然后利用一个数 展开全文
头像 zzugzx
发表于 2020-08-14 18:46:05
题目链接 题意:题解: /* Author : zzugzx Lang : C++ Blog : blog.csdn.net/qq_43756519 */ #include<bits/stdc++.h> using namespace std; #define 展开全文
头像 lifehappy
发表于 2020-08-15 01:20:32
[SCOI2009]生日礼物 思路 如果没有记错的话,这题跟某次多校的题几乎一模一样。区间问题的最小值,有一个最简单的办法就是尺取法了,只要通过两个指针的扫描就可以以线性的复杂度简单的实现,这里我们按照每个物品属于的种类作为我们num数组记录的值,然后再通过一次扫描就可以得到答案了。 代码 /* 展开全文
头像 昵称很长很长真是太好了
发表于 2020-08-14 17:31:20
题意:小西有一条很长的彩带,彩带上挂着各式各样的彩珠。已知彩珠有N个,分为K种。简单的说,可以将彩带考虑为x轴,每一个彩珠有一个对应的坐标(即位置)。某些坐标上可以没有彩珠,但多个彩珠也可以出现在同一个位置上。 小布生日快到了,于是小西打算剪一段彩带送给小布。为了让礼物彩带足够漂亮,小西希望这一段彩 展开全文
头像 sunsetcolors
发表于 2020-08-14 18:40:01
[SCOI2009]生日礼物 题目地址: https://ac.nowcoder.com/acm/problem/20565 基本思路: 比较容易想到尺取,我们先将每个珠子对应到它的颜色,用结构体做一个类似离散化的排序处理,然后我们尺取,每次使用来维护,尺取到包含所有颜色的区间,然后算出这些 展开全文
头像 sunrise__sunrise
发表于 2020-08-14 21:03:53
题目意思 解决方案 #pragma GCC target("avx,sse2,sse3,sse4,popcnt") #pragma GCC optimize("O2,O3,Ofast,inline,unroll-all-loops,-ffast-math") #include <bits 展开全文
头像 luo想要个气球
发表于 2020-08-18 13:32:49
题意: 思路: #include <cstdio> #include <vector> #include <algorithm> #include <iostream> using namespace std; const int N = 1e6 展开全文