LINK

不得不说 双指针用法nb

题目

输入输出样例

输入
6 3
1 5
2 1 7
3 1 3 8
输出
3

思路:

建议看尺取法

代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
//#define int long long
const int mod=1e9+7;
const int N=1e6+10;
int n,k,x,y,num,minn,maxx;
int vis[N];
struct node{int pos,x;
}a[N];
bool cmp(node x,node y){//先位置 后种类 if(x.pos ==y.pos)return x.x <y.x ;return x.pos <y.pos ;
}
int sol(){int ans=INT_MAX;int l=0,r=0,zl=0;while(l<=r&&r<n){if(!vis[a[r].x])zl++;vis[a[r].x]++;while(zl==k){ans=min(ans,a[r].pos-a[l].pos);vis[a[l].x]--;if(!vis[a[l].x ])zl--;l++;//注意位置!!!}r++;//注意位置!!!}return ans;
}
signed main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n>>k;for(int i=0;i<k;i++){cin>>x;for(int j=0;j<x;j++){cin>>y;a[num].x =i;a[num++].pos =y;} }sort(a,a+num,cmp);cout<<sol();return 0;
}

P2564 [SCOI2009]生日礼物(尺取法/双指针)相关推荐

  1. P2564 [SCOI2009]生日礼物

    P2564 [SCOI2009]生日礼物 题意: n个彩珠,k个种类,分布在一个彩带上,现在要选取彩带的一部分,要求该部分包含所有种类的彩珠,且长度尽可能短,你能计算这个最短的长度吗? 1≤N≤100 ...

  2. 数据结构9-双指针(尺取法)(double pointer)

    双指针有好几种,但是最常用的是尺取法,所以有的时候就说尺取法 双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,而是使用两个相同方向(快慢指针)或者相反方向(对撞指针)的指针进行扫描, ...

  3. [SCOI2009]生日礼物 单调性尺取法

    题意:给你n个k种颜色的点,每个点都有坐标和颜色两个属性,选出一个长度尽量短的区间,使得每种颜色的点都在区间内出现. 数据范围: 对于50%的数据, N≤10000: 对于80%的数据, N≤8000 ...

  4. 吃月饼 尺取法(双指针)

    月饼 描述 端午节都过了,中秋节还会远吗?中秋节吃月饼是我国的传统习俗.每年的中秋节,yoyo都会吃很多很多个月饼.比如蛋黄莲蓉,豆沙等等.现在,他得到了n个月饼,月饼被排成一个固定的一列.但是这个他 ...

  5. ACM—各种模拟 总结(字符串,尺取法,数学问题)习题汇总

    目录 一.字符串模拟 二. 高精度计算 1. 回文数(高精度,进制转换) 三.数学问题模拟 四.尺取法(双指针法) 1.都说小镇的切糕贵 (尺取法,字符串) umi和弓道 五.奇怪的模拟 x的位数=l ...

  6. 算法篇之-----滑动窗口(尺取法)

    滑动窗口(尺取法 1. 介绍 2. 滑动窗口法的大体框架 4.最小覆盖子串 5.窗口数量 6.最小值 1. 介绍 滑动窗口法,也叫尺取法(可能也不一定相等,大概就是这样 =.=),可以用来解决一些查找 ...

  7. 【每日一题】8月17日题目精讲-[SCOI2009]生日礼物

    来源:牛客网: 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 小西有一条很长的彩带,彩带 ...

  8. 解题报告 (十三) 尺取法

    文章目录 尺取法 解题报告 PKU 2100 Graveyard Design PKU 3061 Subsequence PKU 2739 Sum of Consecutive Prime Numbe ...

  9. P1638 逛画展——尺取法的妙用

    题目描述 博览馆正在展出由世上最佳的 mm 位画家所画的图画. 游客在购买门票时必须说明两个数字,aa 和 bb,代表他要看展览中的第 aa 幅至第 bb 幅画(包含 a,ba,b)之间的所有图画,而 ...

最新文章

  1. android同步服务启动,Android Service的基本用法(startService启动方式生命周期)
  2. Java线程之多线程与多进程(2)——线程优先级与线程安全
  3. 2019蓝桥杯省赛---java---A---6(完全二叉树的权值)
  4. python协程池操作mysql_python_协程方式操作数据库
  5. 使用spring的JavaMailSender发送邮件
  6. ExtJS4.2学习 php版(五)
  7. 猜数字游戏c语言编程排行榜,C语言程序经典示例—-(7)猜数字游戏
  8. 套用这套模板,玩转周报、月报、年报更省事
  9. python读取rtf文件_在python中将unicode文本输出到RTF文件
  10. 记一个bug:ImportError: cannot import name ‘comb‘
  11. 天问一号入轨火星成功,火星,我们来了!
  12. jscript经典(待整理)
  13. localhost是什么?
  14. 计算机电缆传输频率,传输频率
  15. 喊苦喊累的程序员们,看看日本人是怎么加班的。
  16. Git GitHub 简明教程
  17. 北京图王软件开发有限公司产品介绍-Visual Graph专业图形引擎
  18. 天猫双 11 背后:409 亿次安全保护,全链路保障每个购物场景
  19. EasyNVR 使用记录
  20. 常用Benchmark

热门文章

  1. 疑似说教 | 学会提问
  2. PWA(Progressive Web App)初探总结
  3. windows 通过 Xshell 传文件到 Linux
  4. 输入一行字符,统计其中有多少个单词,单词间用空格分隔(C语言)
  5. html 音乐 QQ播放器 外链 代码 播放器 外链 代码
  6. 小型水库雨水情测报和大坝安全监测
  7. 图计算思维与实践 (二)核心概念与算法
  8. windows搭建hadoop环境(解决HADOOP_HOME and hadoop.home.dir are unset)
  9. 【动态规划dp】青蛙的烦恼(frog)
  10. 约翰-聂夫的投资原则