算法学习
凝望_XXW
这个作者很懒,什么都没留下…
展开
-
Educational Codeforces Round 37 (Rated for Div. 2) E. Congruence Equation
题目连接 http://codeforces.com/group/1EzrFFyOc0/contest/919/problem/E算法:逆元公式推导,变换 (1)令 n = i*(p-1)+ j (2)得 (i*(p-1)+j)a^(i(p-1)) 三 b*a^(-j) (3) - a^(-j) 可通过求 a^j 的逆元求得原创 2018-02-02 11:17:20 · 128 阅读 · 0 评论 -
ACM-ICPC 2018 沈阳赛区网络预赛 G.Spare Tire (容斥)
题目链接:https://nanti.jisuanke.com/t/31448 题意: f(n) = {n2,3n+1,if n is evenif n is odd{n2,if n is even3n+1,if n is原创 2018-09-14 16:44:07 · 153 阅读 · 0 评论 -
D. Vasiliy's Multiset (字典树)
题目链接:http://codeforces.com/contest/706/problem/D题意:对一个集合有三种操作: “+ x” 在这个集合中加入x“- x” 在这个集合中删除x(保证原本的集合中有x)“? x” 求x与集合中的某个数异或后的最大值思路:可以用字典树查询从高位到低位,尽可能查到与x异或后能让当前2进制位为1的数位。其累加即为结果。算法:字典树#...原创 2018-07-28 09:30:48 · 300 阅读 · 0 评论 -
HDU 1251 统计难题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1251题意:输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,一个空行代表单词表的结束.第二部分是一连串的提问,每行一个提问,每个提问都是一个字符串。输出以该字符串为前缀的单词个数。 注意:本题只有一组测试数据,处理到文件结束.算法:字典树#include <...原创 2018-07-27 17:10:01 · 293 阅读 · 0 评论 -
F. SUM and REPLACE (线段树)
题目链接:http://codeforces.com/contest/920/problem/F题意:定义一个函数D(x) = x 的因数数量总和。给你n个数 a[1] ~ a[n]。给你两种命令 - 将下标在[l, r] 区间内的数x,全部变为D(x) - 查询[l,r]的区间和思路:容易得知,D(1) = 1, D(2)=2, 所以,以最底层数为更新对象,当某个区...原创 2018-05-18 21:09:59 · 438 阅读 · 0 评论 -
E. Connected Components (BFS )
题目链接:http://codeforces.com/contest/920/problem/E题意:给你n个点,m条边,这个由n个点组成的图中,除了给你的m条边不存在以外,其他边都存在,两点间只有一条边,且无自环。算法:BFS思路:因为1 ≤ n ≤ 200000,所以用无法用邻接表存图,可以用二维的map代替二维数组(当然,既然算法是BFS的话,用前向星之类的也行)。 把1~n放入一...原创 2018-05-10 09:34:47 · 477 阅读 · 0 评论 -
VK Cup 2012 Round 2 A. Substring and Subsequence
题目链接:http://codeforces.com/problemset/problem/163/A题意:给你两个字符串——s , t 。要算s的子串(连续)和t的子序列(可不连续)相同的匹配数算法:dp思路:dp[i+1][j+1] 表示 “以s[i]为右端点的所有子串” 与 “t[0~ j] 区间内所有的子序列” 相同匹配的数量。 则状态转移方程为 dp[i+1][j+1] = ...原创 2018-04-13 19:09:13 · 153 阅读 · 0 评论 -
Codeforces Round #257 (Div. 2) D. Jzzhu and Cities
题目链接:http://codeforces.com/contest/450/problem/D题意:给n个城市、m条公路、k条铁路(铁路只在1号城市与其他城市间)。算出在最短路不变的情况下,最多能去除多少条铁路算法:最短路 dijkstra思路: 先把m个公路建图,这样边数达到2*m, 在对k 个铁路建图,进而可以判断边为公路还是铁路。当最短路是公路时,令flag=1; 当最短路为铁路...原创 2018-04-06 15:27:19 · 173 阅读 · 0 评论 -
D. Timetable Educational Codeforces Round 39 (Rated for Div. 2)
题目链接:http://codeforces.com/contest/946/problem/D题意:设一个星期有n天,每天有m小时,给你n个长为m的字符串(由0、1组成),1表示要上课的时段。你每天需要花在学校的时间是从第一个1到最后一个1(包括头尾)。你可以翘掉最多k节课,求你一个n天总计待在学校的最小时间算法:dp思路: 遍历每天用mn[i]记录当天,要上连续的i节课后所需花费的...原创 2018-04-18 12:06:00 · 156 阅读 · 0 评论 -
D. A Leapfrog in the Array Codeforces Round #469 (Div. 2)
题目链接:http://codeforces.com/contest/950/problem/D 参考链接:https://blog.csdn.net/xiangAccepted/article/details/79506332 所得:我原本是找单个样例的规律,但是找出来后发现还是会超时,看了上面的参考链接后发现,原来最省事的规律是在一系列样例之间找规律#include <bits/...原创 2018-04-16 12:35:21 · 142 阅读 · 0 评论 -
Educational Codeforces Round 41 (Rated for Div. 2) D. Pair Of Lines
题目链接:http://codeforces.com/problemset/problem/961/D题意:给你n个点的坐标(整数),判断是否存在两条线,使得所有点至少在其中一条线上算法:几何思路:其中一条线,至少经过点1和点2,或点1和点3,或点2和点3。确定一条线后判断剩余点是否在同一直线上#include <bits/stdc++.h>#define pi...原创 2018-04-09 21:15:37 · 117 阅读 · 0 评论 -
Codeforces Round #311 (Div. 2) D. Vitaly and Cycle
题目链接:http://codeforces.com/problemset/problem/557/D题意:给你包含n个顶点,m条边的不一定连通&&没有自环和重边的无向图,要你找到能够使得这个图中存在:(奇数长度&&顶点数>1 ) 的简单圈 所需添加边的最小数量t。并且找出添加t的方法数w 禁止直接添加自环或重边添加边的方法用所添加边的集合来区分,如果...原创 2018-04-14 13:28:34 · 211 阅读 · 0 评论 -
Codeforces Round #473 (Div. 2) D. Mahmoud and Ehab and another array construction task
题目链接:http://codeforces.com/contest/959/problem/D题意:给你一个数组,要你找出比它字典序大的互质数组算法:素数筛思路:通过素数筛,可以将2~MAXN的所有数对应到它的最小素因数,再通过while,每次都 x/=factor[x], 即可遍历x的所有素因数#include <bits/stdc++.h>#define pi ...原创 2018-04-08 15:33:22 · 168 阅读 · 0 评论 -
Codeforces Beta Round #37 C. Old Berland Language
题目链接:http://codeforces.com/contest/37/problem/C题意:让你构造n个由‘0’和‘1’构成字符串,其长度分别为l1, l2, l3,…ln. 要使任意一个串不为任意另一个串的 开头子串。思路:手动模拟一下可以知道:当n==1, l[1]==1时,s[1]==“0”或“1”当n==2 ,l[1]==1, l[2]==1时, s[1]==”0”,...原创 2018-02-22 16:44:42 · 305 阅读 · 0 评论 -
Codeforces Round #183 (Div. 1) C. Minimum Modular
题目链接:http://codeforces.com/contest/303/problem/C题意:给n个数a[i], 在最多去除 k 个数的情况下,找出最小的 m ,使得 ,即n个数中任意两个数 膜m 不相等算法:暴力+剪枝思路: 可转化为 a[i]-a[j] != *m,其中k为任意正整数。 - 记录下所有a[i]-a[j] 差值的出现次数,将 a[i]-a[j]==k...原创 2018-02-18 20:33:08 · 207 阅读 · 0 评论 -
Good Bye 2017 C. New Year and Curling
题目链接:http://codeforces.com/contest/908/problem/C算法:暴力模拟,计算几何坑点:数组不要越界,不然 double计算出来的值偏差非常非常大#include #define pi acos(-1)using namespace std;typedef long long LL;typedef pairint, int> P;con原创 2018-02-02 18:01:31 · 198 阅读 · 0 评论 -
## Hello 2018 C. Party Lemonade ##
## Hello 2018 C. Party Lemonade ## http://codeforces.com/contest/913/problem/C算法:贪心思路: 求出每个2^(i-1)体积对应下的最小cost(利用倍数关系遍历一遍)从最大体积的瓶子开始买,因为瓶子不可分割,可用 (L+v-1)/v 表示:当前只购买体积v并确保填满L的,所需瓶数(多买一点可能更便宜)L为剩原创 2018-01-23 11:59:10 · 171 阅读 · 0 评论 -
D. Gourmet choice(并查集 + 拓扑排序)
题目链接:http://codeforces.com/contest/1131/problem/D题意:给你两个数n,m分别表示两组数的个数,第一组n个数,第二组m个数。给你两组数之间的两两大小关系(>, = , <),构造出一个满足这些关系并且最大值最小的两组数。算法:并查集 + 拓扑排序#include <bits/stdc++.h>#define pi a...原创 2019-03-02 17:09:13 · 273 阅读 · 0 评论