UOJ Round #1 题解】的更多相关文章

题解: 质量不错的一套题目啊..(题解也很不错啊) t1: 首先暴力显然有20分,把ai相同的缩在一起就有40分了 然后会发现由于原来的式子有个%很不方便处理 so计数题嘛 考虑一下容斥 最终步数=初始步数-使用tab键减少的步数=(x-1)*sigma(ai/x) 这个显然就很好维护了 我们考虑对于ai/x只会有根号ai个取值 然后每个值分别实现区间加区间减 这样用差分来做就是n根号x 线段树nlogn根号x 复杂度稍微大了点 满分做法就是枚举x,然后枚举y,计算a[i]/x=y的数有几个,计…
UOJ Round #1 难度很良心啊! 做出了前两题,第三题看到仙人掌就吓哭了. [UR #1]缩进优化 就是求 \[ \sum_{i=1}^n a_i - (x-1)\sum_{i=1}^n\lfloor \frac{a_i}{x} \rfloor \] 最小值. 调和级数\(O(nlogn)\) #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #…
UOJ Round #15 大部分题目没有AC,我只是水一下部分分的题解... 225[UR #15]奥林匹克五子棋 题意:在n*m的棋盘上构造k子棋的平局 题解: 玩一下发现k=1, k=2无解,然后间隔着,上下两行相同: 010101 010101 101010 101010 这样构造下来就行了. 然后要特判n=1 或 m=1,这时候k=2可以有解 #include <iostream> #include <cstdio> #include <cstring> #i…
构造+贪心/数论 为什么只有两个标题呢……因为第二题我不会…… 怎样提高智商 构造题……然而一开始半天我都yy不出来…… 后来我想:这题应该不会特别麻烦,而且既然样例只给了1,可能再给大一点就让人发现规律了……(心理战的可怕0.0?)然后yy了一下,发现全部都写0的答案是最多的,是$4*3^{n-1}$,然后就过了…… 唯一用到的是快速幂? //UOJ Round #5 A #include<cstdio> #include<cstdlib> #include<cstring…
枚举/DP+排列组合 缩进优化 QAQ我当时一直在想:$min\{ \sum_{i=1}^n (\lfloor\frac{a[i]}{x}\rfloor + a[i] \ mod\ x) \}$ 然而并不会做啊……一点思路也没有……主要是后面那个取模非常难受…… 其实正解有点逆向思维的感觉:$ans=\sum_{i=1}^n a[i] - max\{ \sum_{i=1}^n \lfloor \frac{a[i]}{x}\rfloor *(x-1) \} $ 也就是先将a[i]全部加起来,然后再…
A 一道不错的题,虽然大家都觉得是水题,然而蒟蒻我想出来的好慢……Orz alpq 发现其实就是一个网格图,每一个大块都是同一颜色……横纵坐标互不干扰…… //UOJ Round #8 A #include<vector> #include<cstdio> #include<cstring> #include<cstdlib> #include<iostream> #include<algorithm> #define rep(i,n…
Codeforces Round #556 题解 Div.2 A Stock Arbitraging 傻逼题 Div.2 B Tiling Challenge 傻逼题 Div.1 A Prefix Sum Primes 傻逼题,先放2,1然后放完2然后放完1 Div.1 B Three Religions 有三个字符串\(s_1,s_2,s_3\)和一个主串\(s\),每次操作改变一个\(s_i\)(插入或删除字符),每次操作完之后问\(s\)是否可以分成\(3\)个子序列正好是\(s_1,s_…
LibreOJ β Round #2 题解 模拟只会猜题意 题目: 给定一个长为 \(n\) 的序列,有 \(m\) 次询问,每次问所有长度大于 \(x\) 的区间的元素和的最大值. \(1 \leq x \leq n \leq 10^4,m \leq 10^5,|A_i| \leq 10^4\) 题解: 因为 \(n \leq 10^4\) ,所以暴力. #include <cstdio> #include <cstring> #include <algorithm>…
Codeforces Round #569 题解 CF1179A Valeriy and Deque 有一个双端队列,每次取队首两个值,将较小值移动到队尾,较大值位置不变.多组询问求第\(m\)次操作时队首两个数. 显然\(O(n)\)次以内队首变成了最大值,之后就循环了,暴力前\(O(n)\)个操作的答案即可 https://codeforces.com/contest/1179/submission/55878330 CF1179B Tolik and His Uncle 有一个\(n*m\…
Codeforces Round #557 题解 掉分快乐 CF1161A Hide and Seek Alice和Bob在玩捉♂迷♂藏,有\(n\)个格子,Bob会检查\(k\)次,第\(i\)次检查第\(x_i\)个格子,如果Alice在这个格子就输了.Alice一开始会在一个格子,可以在Bob检查过一次后向一个相邻的格子移动(整局游戏只能用一次).求Alice有多少种方案赢. 两个方案相同当且仅当Bob检查之前Alice的位置和Bob做完所有检查之后Alice的位置都相同. cao,sb阅…
CFEducational Codeforces Round 66题解报告 感觉丧失了唯一一次能在CF上超过wqy的机会QAQ A 不管 B 不能直接累计乘法打\(tag\),要直接跳 C 考虑二分第\(k\)小的值 那么问题就变成了 每一个数变成了\([x-mid,x+mid]\)的一段区间,如果有一个位置被覆盖了超过\(k\)次 那么\(mid\)一定合法 类似括号匹配 每次碰到左端点就贡献+1 右端点就统计答案然后-1 维护答案的同时顺便维护位置就好了 #include<cstdio>…
Speed Typing 题意概述 给出两个字符串I和P,问能否通过删除P中若干个字符得到I?如果能的话,需要删除字符的个数是多少? 数据规模 \[1≤|I|,|P|≤10^5 \] 双指针 设置两个指针i和j分别指向I和P的第一个字符,滑动指针j,如果j指向的字符与i指向的字符相同,则让i向后滑动一个字符,当i滑动到I字符串末尾或j滑动到P字符串末尾后即可结束循环.如果i滑动到I字符串末尾,则说明可以通过删除P中若干个字符得到I,那么删除的字符个数为\(|P|-|I|\):反之则不能. 复杂度…
Codeforces Beta Round #62 A Irrational problem 题意 f(x) = x mod p1 mod p2 mod p3 mod p4 问你[a,b]中有多少个数满足f(x)=x 题解 显然直接带进去就好了-- 代码 #include<bits/stdc++.h> using namespace std; int main() { int p1,p2,p3,p4,a,b; scanf("%d%d%d%d%d%d",&p1,&am…
我能说我比较傻么!就只能做一道签到题,没办法,我就先写下A题的题解&源码吧,日后补上剩余题的题解&源码吧!                                     A -- Niro plays Galaxy Note 7                    Time Limit:1s Memory Limit:128MByte DESCRIPTION Niro, a lovely girl, has bought a Galaxy Note 7 and wants to…
A -- simple math problem Time Limit:2s Memory Limit:128MByte Submissions:1599Solved:270 SAMPLE INPUT 5 20 1314 SAMPLE OUTPUT 5 21 1317 SOLUTION “玲珑杯”ACM比赛 Round #19 题目链接:http://www.ifrog.cc/acm/problem/1145 分析: 这个题解是官方写法,官方代码如下: #include <iostream>…
Codeforces Round #542 abstract I决策中的独立性, II联通块染色板子 IIIVoronoi diagram O(N^2 logN) VI环上距离分类讨论加取模,最值中的决定性元素 V代数构造 B 题意 2n个数排成一行,1..n各出现两次,两个人分别从1按顺序走到n(每个数只能被一个人路过),问他们两个人的距离和的最小值(两个数之间的距离等于他们位置(下标)值差)? 题解 将每个数的两个位置用pair存起来(eg : pos[1].x , pos[1].y). 首…
枚举/二分 C题太神窝看不懂…… 核聚变反应强度 QwQ很容易发现次小的公约数一定是gcd的一个约数,然后……我就傻逼地去每次算出a[1],a[i]的gcd,然后枚举约数……这复杂度……哦呵呵... 正解是先找到a[1]的所有质因数啊……然后在刚刚那个算法的“枚举gcd的约数”的时候直接枚举这些质因数就好了…… //UOJ Round3 A #include<vector> #include<cstdio> #include<cstring> #include<c…
Codeforces Global Round 2 题目链接:https://codeforces.com/contest/1119 A. Ilya and a Colorful Walk 题意: 给出n个数,问从一个数到另外一个不同数的最长距离是多少. 题解: 从前往后,从后往前扫两遍即可.证明可用反证法,这里略去. #include <bits/stdc++.h> using namespace std; typedef long long ll; ; int n; int c[N]; i…
这里是总链接\(Link\). \(A\) 题意:求\(\sum_{i=1}^{k} a_i\times b^{k-i}\)的奇偶性, \(k = \Theta(n \log n)\) --其实很容易想麻烦,比如说逐个判断,整体判断啥的.但其实只要对结果都\(\bmod ~10\),然后判断奇偶性就好了. cin >> b >> k ; for (i = 1 ; i <= k ; ++ i) scanf("%d", &base[i]) ; reve…
强行一波题解骗一个访问量好了... http://blog.csdn.net/yanqval/article/details/51457302 http://absi2011.is-programmer.com/posts/200822.html http://absi2011.is-programmer.com/posts/200920.html orz js省队神犇↑ Day1 最佳团队(team) 给一个n+1个点的树,每个点有价值pi和费用si,求一个包含根的大小为m+1的联通块,使价值…
题解  题目 1001 GT and sequence 注意先特判000的情况:如果读入的数据有000,那么去掉所有的000且最后答案和000取一个max. 剩下的正数显然全部乘起来比较优. 对于负数的话,如果个数是奇数个我们就去掉绝对值最小的那一个,然后全部乘起来即可. 1002 GT and numbers 如果AAA大于BBB那么显然无解. 考虑把AAA和BBB分解质因数. 若BBB存在AAA没有的质因数也显然无解. 对于某一个AAA的质因数的次数.为了加速接近BBB,它一定是每次翻倍,最…
今天做题运气出奇的好,除了几处小错误调试之后忘记改掉了……最后还AK了……虽然题目不难,学长也说是福利局,但是对个人的鼓励作用还是挺大的……至此暑假训练就结束了,也算没有遗憾……. 题解如下: Problem A: 苦逼的MCA Time Limits:  1000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  %lld   Java class name:  Main Description 在TUBN这个地方,有个苦逼的人…
算法零 $n,m \le 100, q \le 10$ 的话,直接给网格中的每一个格点都建一个点,然后该怎么最短路就怎么最短路,该怎么并查集+BFS就怎么并查集+BFS. 复杂度 $O(qnm)$,可以拿下前30分. 算法一 $n\le 10^5, m = 1, q\le 10^5$ 的话,我们可以直接预处理出 $(1,1)-(1,i)$ 的距离以及 $(1,i)-(1,n)$ 的距离,然后就枚举走的方式 $i-j$ 或者 $j-n-1-i$ 就可以啦. 复杂度 $O(n + q)$,结合算法零…
题目链接:UOJ - 51 据说这题与 CF 39E 类似. 题目分析 一看题目描述,啊,博弈论,不会!等待爆零吧... 这时,XCJ神犇拯救了我,他说,这题可以直接搜啊. 注意!是用记忆化搜索,状态为 (a, b) . 是这样的:我们从后面倒着推,对于一个无法再增加 a 或 b 的 (a, b) 状态,当前走的人必败.这是终止的状态. 而对于一个不是终止状态的状态 (a, b) ,可能有两种后继状态 (a + 1, b) || (a, b + 1) ,我们递归先求出这两个后继状态是必败还是必胜…
A:DESCRIPTION Eric has an array of integers a1,a2,...,ana1,a2,...,an. Every time, he can choose a contiguous subsequence of length kk and increase every integer in the contiguous subsequence by 11. He wants the minimum value of the array is at least…
A. Vicious Keyboard 题意:给你一个字符串,里面只会包含VK,这两种字符,然后你可以改变一个字符,你要求VK这个字串出现的次数最多. 题解:数据范围很小,暴力枚举改变哪个字符,然后check就好. #include<bits/stdc++.h> using namespace std; int main(){ string s; cin>>s; int ans = 0; for(int i=0;i<s.size();i++){ if(s[i]=='V'){…
A. k-Factorization 题意:给你一个n,问你这个数能否分割成k个大于1的数的乘积. 题解:因为n的取值范围很小,所以感觉dfs应该不会有很多种可能-- #include<bits/stdc++.h> using namespace std; long long n; int k; vector<int> ans; void dfs(int x,long long now,int st){ if(x==k&&now==n){ for(int i=0;i…
写之前,先发表下感慨:好久没写题解了,也许是因为自己越来越急利了,也可以说是因为越来越懒了. A. Diverse Substring 直接找一找有没有相邻的两个不同的字符即可. B. Vasya and Books 分别记录书本摆放顺序$a[]$,取书顺序$b[]$,每本书的位置$pos[]$,每本书在不在书堆上$in[]$,书堆最顶端的书的位置$top$(因为用的是数组,元素位置是固定的). 然后,按照题意枚举输入的取书顺序$b[]$,同时记录答案$ans$,更新$top$即可. C. Va…
都是泪呀...↑ 题目传送门 题意(直接复制了QWQ) 题目描述 给定由非负整数组成的\(n \times n\)的正方形矩阵,你需要寻找一条路径: 以左上角为起点, 每次只能向右或向下走, 以右下角为终点 并且,如果我们把沿路遇到的数进行相乘,积应当是最小"round",换句话说,应当以最小数目的0的结尾. 输入格式 第一行包含一个整数 \((2 \leq n \leq 1000)\),\(n\)为矩阵的规模,接下来的\(n\)行包含矩阵的元素(不超过\(10^9\)的非负整数).…
Problem A. Neverending competitions 题目大意 一个团队有多个比赛,每次去比赛都会先订机票去比赛地点,然后再订机票返回.给出\(n\)个含有起止地点的购票记录(不按时间顺序),判断这个团队是否返回. 题解 竞速题 因为每次比赛都必定是一去一返 所以当订票记录个数为偶数的时候一定在家中,否则一定在比赛. Code a = input() if a % 2 == 0: print 'home' else: print 'contest' Problem B. Cod…