随笔分类 -  其他——构造

摘要:Problem - E2 - Codeforces 题意: 给出一个长为n的字符串,你可以进行2种操作 1、把串在后面再拼接一次 2、删去串的最后一个元素 要求用这两种操作得出字典序最小的长为m的串 首先答案肯定是由一个前缀拼接多次构成 假设当前的最优前缀是A前缀,长度为LA,现在正在考虑的是B前缀 阅读全文
posted @ 2021-10-04 11:42 TRTTG 阅读(137) 评论(0) 推荐(0) 编辑
摘要:Problem - 1492D - Codeforces 题意: 给出a b k,构造两个二进制数x和y(x>=y,不能有前导0),使x-y的二进制有k个1 1XXX0 0XXX1 手算可以发现,若x有一段以1开头以0结尾,长为L的区间,对应的y这一段为以0开头以1结尾,中间的x和y都一样 那么这一 阅读全文
posted @ 2021-10-03 10:08 TRTTG 阅读(43) 评论(0) 推荐(0) 编辑
摘要:Problem - 1567D - Codeforces 题意: 给出s和n 请构造n个十进制正整数,满足他们在十进制下的和等于s,且在十一进制下的和最大 如果n<=s的数位和,那么只要不把一个高位拆成10个低一位,在十一进制下的和都是一样的 这给我们的启示是尽可能不要拆高位,当因为正数限制不得不拆 阅读全文
posted @ 2021-10-02 20:36 TRTTG 阅读(44) 评论(0) 推荐(0) 编辑
摘要:Problem - 23B - Codeforces 题意: n个人参加聚会,他们中的某些人是朋友 首先朋友数为0的人会离开聚会 然后剩余朋友数为1的人(这1个人在之前还没有离开聚会)会离开聚会 然后剩余朋友数为2的人(这2个人在之前还没有离开聚会)会离开聚会 …… 最后剩余朋友数为n-1的人(这n 阅读全文
posted @ 2021-10-02 17:37 TRTTG 阅读(31) 评论(0) 推荐(0) 编辑
摘要:Problem - 1552D - Codeforces 题意: 给出一个有n个数的数组a,能否构造出一个长为n的数组b,使a中的每个数都可以由b中某两个数相减得到。 令b[1]等于任意值,b[i]=a[i-1]+b[1],这样可以很容易的使a中的n-1个数满足要求 剩下一个数比较难搞 若b[x]- 阅读全文
posted @ 2021-09-27 21:29 TRTTG 阅读(150) 评论(0) 推荐(0) 编辑
摘要:Problem - 1543D1 - Codeforces 题意: 有一个初始密码,在[0,n-1]范围内,你要猜密码 设当前密码为x,你猜的密码为y,如果没有猜对,密码会更改为x异或y 至多可以猜n次,要求猜出密码(更改后的) 交互,猜对返回1。猜错返回0。 第一次猜0,第二次猜1异或0,第三次猜 阅读全文
posted @ 2021-09-23 20:35 TRTTG 阅读(34) 评论(0) 推荐(0) 编辑
摘要:https://codeforces.com/problemset/problem/1558/C 题意: 给出一个长为n(奇数)的排列,要求通过翻转奇数前缀的方式,使排列升序 至多可以做 n*5/2 次翻转 n为奇数,翻转不会改变数字所在位置的奇偶性 所以有解的前提是值为奇数的数在奇数位置,偶数在偶 阅读全文
posted @ 2021-09-08 16:47 TRTTG 阅读(86) 评论(0) 推荐(0) 编辑
摘要:题意: 有两个怪兽a和b,血量分别为hpa hpb,攻击力分别为atka atkb 有一个英雄,在第i秒的攻击力为i 每一秒,英雄先受到活着的怪兽攻击力之和的伤害 然后选择一个怪兽攻击 问英雄最少受到多少伤害后才能打死两只怪兽 并输出字典序最小的攻击方案 受到伤害最少的方案一定是先以打死其中一只怪兽 阅读全文
posted @ 2020-11-24 21:39 TRTTG 阅读(326) 评论(0) 推荐(0) 编辑
摘要:https://ac.nowcoder.com/acm/contest/3004/B 利用二进制进行构造 假设一个方形迷宫,主对角线都是B,B上面一个位置是D,其余位置都是R 那么到第i行第i列的方案数就是2^i 所以方案数的二进制形式,如果第i位是1,那就需要第i行第i列这一格的贡献 将这一格下面 阅读全文
posted @ 2020-02-25 20:52 TRTTG 阅读(205) 评论(0) 推荐(0) 编辑
摘要:#include #include #include using namespace std; #define N 201 pairp[N]; char s[N]; int ans[N],cnt; bool vis[N]; int start; int tmp[N]; void read(int &x) { x=0; char c=getchar(); whil... 阅读全文
posted @ 2018-04-03 18:49 TRTTG 阅读(248) 评论(0) 推荐(0) 编辑
摘要:http://codeforces.com/contest/950/problem/D 前n/2个格子的奇数下标的数没有参与移动 候n/2个格子的奇数下标的数一定是一路移向偶数下标移 所以还原数的初始位置时,让数沿原来的路线向右移动,到达的第一个奇数下标就是这个数的初始位置 在初始位置a的数是(a+ 阅读全文
posted @ 2018-03-22 10:45 TRTTG 阅读(314) 评论(0) 推荐(0) 编辑
摘要:http://codeforces.com/contest/950/problem/C 题意: 给出一个01序列,问能否将这个序列分为若干个0开头0结尾的序列 输出方案 如果有解,几个1能在一个序列就在一个序列 一定可以找到解 因为0可以单独1个序列,1必须要依托于0 2个1如果分开 要4个0,连起 阅读全文
posted @ 2018-03-22 10:23 TRTTG 阅读(216) 评论(0) 推荐(0) 编辑
摘要:http://codeforces.com/contest/923/problem/D 题意: A-->BC , B-->AC , C-->AB , AAA-->empty 问指定串S是否能变成目标串T 发现1:B与C等价 B-->AC-->AAB-->AAAC-->C C-->AB-->AAC-- 阅读全文
posted @ 2018-03-17 16:35 TRTTG 阅读(267) 评论(0) 推荐(0) 编辑
摘要:http://codeforces.com/problemset/problem/931/C 题意: 给定一个数列,要求构造一个等长的数列,使得数列的平均值等于给定数列,并且使得构造出的数列中与原数列相同的数字个数最小,输出最小相同数字个数与构造的数列。数列长度不超过100000,给定数列中最大的数 阅读全文
posted @ 2018-03-05 10:14 TRTTG 阅读(438) 评论(0) 推荐(0) 编辑
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=5100 1、找到d1[i]+dn[i] 最小的点,作为1到n链上的点 2、令链长为D,若abs(d1[i]-dn[i])==D,则 i 与1或n 连边 3、对于链上除去1和n的点k,若 dn[i]-d1 阅读全文
posted @ 2018-02-26 14:04 TRTTG 阅读(209) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5385 题意: 给定一张n个点m条有向边的图,构造每条边的边权(边权为正整数),令d(x)表示1到x的最短路,使得存在点i(1<=i<=n)满足d(1)<d(2)<…<d(i)>d(i+1)>…>d(n)。 从两边 阅读全文
posted @ 2018-02-11 20:44 TRTTG 阅读(242) 评论(0) 推荐(0) 编辑
摘要:http://codeforces.com/contest/896/problem/B 题意: 交互题 n张卡片填m个1到c之间的数,1<=n*ceil(c/2)<=m 最后填出一个单调非降序列,输出每次填的位置 <=c/2: 从左开始扫描,遇到空位 或 比原数更优(<原数)就放 >c/2: 从右开 阅读全文
posted @ 2017-12-16 11:01 TRTTG 阅读(235) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示