摘要: 题意: 以每个点为起点,找到第一个出现两次的点 解析: 我是先找出来所有的环 环上的点找出来的肯定是自己 bz[i] = i; 然后去遍历不在环上的点j 如果通过这个点找到一个已经标记的的点i 那么bz[j] = bz[i]; 行吧。。。其实直接暴力 就几行代码。。。真是的。。。过分。。。。我真是垃 阅读全文
posted @ 2018-09-10 21:22 WTSRUVF 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 题意: 找出来一个点集S 使得S中的点不能互相通过一步到达 并且S中的点 可以在小于等于2的步数下到达所有的点 要父结点 不要子结点 这样就求出来一个点集S‘ 而S'中可能存在 v -> u 这样的路 所以从后向前遍历 结点 把S’中的点的子结点且在S‘中的点 再从S'中去除掉 关于为什么从后向前 阅读全文
posted @ 2018-09-10 20:07 WTSRUVF 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题意: 就是由2k 个数 每次选一个 可以选同样的 围成一个圈 使得相邻的数同或为真 求方案数 解析: 第一个数有2k 种选择 之后的n-2个数 都有2k-1 种选择 第n个数 我们要考虑 它的左右两个数 是否一样 一样的话 就是2k - 1 种选择, 不一样的话就是2k - 2 种选择 如果一样是 阅读全文
posted @ 2018-09-10 15:03 WTSRUVF 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题意: 1、区间求 a[l]×L+a[l+1]×(L−1)+⋯+a[r−1]×2+a[r](L is the length of [ l, r ] that equals to r - l + 1) 2、单点修改 解析: 只有这两个操作 并且区间求得值与前缀和极为相似 所以嘛 就要想到树状数组 树状 阅读全文
posted @ 2018-09-10 10:41 WTSRUVF 阅读(224) 评论(0) 推荐(0) 编辑