HDU6301.Distinct Values 这个题就是给你区间要求区间内的数都不相同,然后要求是字典序最小,直接贪心走一遍,但是自己写的时候,思路没有错,初始化写挫了... 将区间按左端点小的排序,如果相同就按右端点大的排序,因为右端点大的肯定满足右端点小的.然后直接标记数组记录当前区间已有的数,然后将没有的数字填到里面.注意初始化就可以了. 代码: //1004-6301-字典序最小的序列,贪心策略,标记当前段出现过的 #include<iostream> #include<cst…
hdu 6301 Distinct Values 题目传送门 题意: 给你m个区间,让你求出一个长度为n的区间且满足在这些区间的数不重复, 并且要求字典序最小 思路: 如果我们已经求出这个序列了,你会发现,如果大的区间已经满足条件了, 那么它包含的小区间也已经满足了. 然后它要求字典序最小,这个从左往右去填充就行了,每次都有能取的最小的 数去填充进去,这样形成的序列自然符合 所以我们需要一个容器来存储能用的数,假设我们处理完i这个位置,要过度到下一个, 如果i+1还在这个区间还好,如果不在,那么…
Distinct Values Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4915    Accepted Submission(s): 1680 Problem Description Chiaki has an array of n positive integers. You are told some facts about…
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=6301 多校contest1 题目大意是有一个长度为N的数组,给出M个"事实",每个事实指明一段区间内数字各异,求最后字典序最小的数组. 贪心+构造,给所有"事实"按 边界(左边界优先)排序,然后扫一遍"事实",用一个队列保证用以构造的所有数字最小且区间内各异. #include <bits/stdc++.h> using namespac…
大意: 给定m个区间, 求构造一个长n且字典序最小的序列, 使得每个区间内的数各不相同 求出每个位置为左端点时向右延伸最大距离, 然后双指针, 每次从set中取最小 #include <iostream> #include <algorithm> #include <math.h> #include <cstdio> #include <set> #include <map> #include <string> #incl…
Distinct Values Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2298    Accepted Submission(s): 740 Problem Description Chiaki has an array of n positive integers. You are told some facts about…
题意:长为n的串,给你m个区间,这些区间内元素不重复,问这样的串字典序最小为? 思路:用set保存当前能插入的元素,这样就能直接插入最小元素了.对操作按l排序,因为排过的不用排,所以两个指针L,R是一直右移的.L右移肯定是增加set中元素,R右移有两种可能:一是L在R右边,R只是负责赶路赶到操作区间:二是L在R左边,那么R右移是在扩大区间,并且对数组中元素进行插入. 代码: #include<cstdio> #include<vector> #include<set>…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1640 题意: 给你一个长度为n的字符串. 你可以将原串的首字母或尾字母移动到新串的末尾. 让你输出字典序最小的新串. 题解: 贪心. 三种情况: (1)c[head] < c[tail] 输出c[head],head++. (2)c[head] > c[tail] 输出c[tail],tail--. (3)c[head] == c[tail] 选head和tail并不等价. 比如原串为…
<题目链接> 题目大意:给你一张图,有n个点,每个点都有需要缴的税,两个直接相连点之间的道路也有需要花费的费用.现在进行多次询问,给定起点和终点,输出给定起点和终点之间最少花费是多少,并且输出最少花费所走的路径,如果有多条路径花费最少,则输出字典序最小的那条. 解题分析: 输出最短路的路径问题,需要注意的是,题目要求输出的最短路径的字典序最小,所以我们在每次松弛的时候,都需要加上判断.如果有多个点的最短路相同,则用DFS求出它们之前走过的路径,并且进行比较,然后选字典序最小的那条. #incl…
题目描述 Best Cow Line (POJ 3617) 给定长度为N的字符串S,要构造一个长度为N字符串T.T是一个空串,反复执行下列任意操作: 从S的头部删除一个字符,加到T的尾部: 从S的尾部删除一个字符,加到T的尾部: 目标是要构造字典序尽可能小的字符串T. 限制条件 1 <= N <= 2000 字符串 S 只包含大写英文字母 样例输入 N = 6 S = "ACDBCB" 样例输出 ABCBCD (如下图所示进行操作) 思路分析 不断取S的开头和结尾中较小的一…