
AtCoder
Rayment_cc
++Rp
展开
-
ARC084D Small Multiple
ProblemAtcoderSolution一道思路很巧妙的题目。在这个题目中,我们可以把题目转化一下,对于x,若+1不进位,那么可以用1的代价使它变为x+1,然后可以花费0的代价,使它变为x*10。那么我们怎么处理使得它是n的倍数的问题呢?把所有数字转化为模n下的值即可。由于边权为0或1,用01BFS可把时间复杂度优化至O(n)O(n)O(n)。Code#include <cs...原创 2018-09-25 14:27:08 · 439 阅读 · 0 评论 -
ARC102D All Your Paths are Different Lengths
ProblemAtCoder给定L,要你构造一张有向带权图,只允许从编号小的指向编号大的,允许两点间有多条边。使得图中从1号点到n号点恰有L条不同的路径,且路径长度分别为0,1,2,⋯ ,L−10,1,2,\cdots,L-10,1,2,⋯,L−1。图的点数必须小于等于20,边数小于等于60。Solution这是一道比较有意思的构造题。我们可以考虑这样构造图,...原创 2018-09-21 08:24:34 · 352 阅读 · 0 评论 -
ARC072E Alice in linear land
ProblemAtcoderSolution考虑用g[i][j]g[i][j]g[i][j]表示当前位置离终点距离为jjj,执行[i,n][i,n][i,n]中的所有命令能否走到终点。然后你会发现如果要修改的话,按照贪心的思想,最优肯定是无法走到的最小的jjj作贡献,那么我们其实就只需要保存最小的无法走到的jjj是多少即可,用f[i]f[i]f[i]表示最大的数使得g[i][0]⋯g[i]...原创 2018-11-06 22:46:34 · 376 阅读 · 1 评论 -
ARC101E Ribbons on Tree
ProblemAtCoderSolution发现ARC也有挺多比较有意思的题目……直接统计是很麻烦的,所以我们不妨考虑容斥。如果有F(S)F(S)F(S)表示SSS集合中的边未被覆盖的答案,那么用一下子集容斥就做完了。考虑f[x][i]f[x][i]f[x][i]表示x子树内有i个点未匹配的方案数,我们会发现当且仅当i=0i=0i=0时,x的父边是没有被覆盖的,根据子集反演会给我们带来-...原创 2018-12-18 19:56:15 · 394 阅读 · 0 评论 -
Atcoder Code Festvial 2017 Final J Tree MST
ProblemAtcoder给你一棵 nnn 个节点的树,每个点有权值 w[i]w[i]w[i] ,边带权。现构建一张完全图,对于任意一对点 (x,y)(x, y)(x,y) ,有一条长度为 w[x]+w[y]+dis(x,y)w[x] + w[y]+ dis(x, y)w[x]+w[y]+dis(x,y) 的边。求这张图的最小生成树。话说Code Festival在官网上咋进啊?qwqq...原创 2019-03-03 21:26:39 · 439 阅读 · 0 评论