EOJ Monthly 2018.3】的更多相关文章

D. Delivery Service 单测试点时限: 2.5 秒 内存限制: 512 MB EOJ Delivery Service Company handles a massive amount of orders in our nation. As is well known, our nation has ncities, with n−1 bi-directional paths connecting them, forming a tree. The length of the i…
准备继续大学acm啦 又要开始愉快的码码码啦 第一次在华东师大OJ上面做题 看来EOJ上的积分体质是假的,我怎么一把上红??? A.数三角形 神tm的防AK题放在A,出题人很不友好啊... 先写了个暴力,算出了1-5的结果,然后在OEIS上面搜了一下(雾) \(a(n) = ((n - 1)^2*n^2*(n + 1)^2)/6 - 2*Sum(Sum((n - k + 1)*(n - l + 1)*gcd(k - 1, l - 1), k, 2, n), l, 2, n)\). 拍了一下,似乎…
A. ultmaster 的小迷妹们 Time limit per test: 2.0 seconds Memory limit: 256 megabytes ultmaster 男神和他的小迷妹们准备躺在图书馆前大草坪享受惬意的午后. 有强迫症的 ultmaster 想要使得自己和小迷妹们正好躺成一块完整的正方形,ultmaster 想知道能否挑出一些小迷妹(至少一个)实现他的愿望. 已知 ultmaster 的形状 n×n 的正方形,小迷妹的形状为 x×y 的长方形(可以横着或者竖着躺).若…
ultmaster 男神和小迷妹们玩起了捉迷藏的游戏. 小迷妹们都希望自己被 ultmaster 男神发现,因此她们都把自己位置告诉了 ultmaster 男神,因此 ultmaster 男神知道了自己去找每个小迷妹所要花的时间. 已知发现第 i 小迷妹得到的分数为 ai⋅tr(tr 为游戏剩余时间).ultmaster 想知道他最多能拿多少分. Input 第一行两个整数 n,T (1≤n≤105,1≤T≤300) 分别表示小迷妹数量,游戏总时间. 接下去 n 行,每行两个整数 ai,ti (…
题目链接:C. 痛苦的 01 矩阵 题目大意:原题说的很清楚了,不需要简化_(:з」∠)_ 题解:设\(r_i\)为第\(i\)行中0的个数,\(c_j\)为第\(j\)列中0的个数,\(f_{i,j}\)代表对应格子是否为0,则有\(cost(i,j)=r_i+c_j-f_{i,j}\),\((cost(i,j))^2=r_i^2+c_j^2+f_{i,j}+2r_ic_j-2f_{i,j}(r_i+c_j)\) $$\sum_{i=1}^n \sum_{j=1}^n \left( cost(…
猜价格 分两种情况讨论: k≤n,先猜至多 k 次 1,由于回答 <1 肯定是假的,所以可以把剩余系下是哪次错试出来,然后用至多 n 次搞定. k>n,每个数都猜两次,如果两次结果不一样,再猜第三次确定哪个是真的,之后就可以当它一直说真话了(n 次内不会再说假话) 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using name…
https://acm.ecnu.edu.cn/contest/92/problem/D/ D. 数蝌蚪 Time limit per test: 2.0 seconds Memory limit: 256 megabytes 有 n 个装着小蝌蚪的水缸排成一排,你拥有一个无限蝌蚪的袋子,可以往一个水缸里放入一只蝌蚪,也可以取出一只蝌蚪,求最少的操作数,使得每个水缸的蝌蚪数量形成一个公差为 k 等差数列. Input 第一行一个数 n,k(3⩽n⩽3×105,0⩽k⩽104).第二行 n 个数,…
描述 是否存在面积为S/2的整点锐角三角形?存在输出Yes并输出三个整点坐标,否则输出No. 注意如果存在输出的坐标必须在long long范围内. Input 第一行一个整数S(1<=S<=1018),表示锐角三角形面积. Output 第一行一个字符串. 若存在接下去三行,每行两个整数X,Y,表示三角形三个点的坐标. Examples input 9 output Yes 0 0 3 0 1 3 input 3 output Yes 1 0 0 1 2 2 题意 如上 题解 首先1和2不行…
分三种情况: 1.k=1.此时每次都说反话,反着二分即可. 2.1<k <= n.那么在前n次问答中一定会出现一次错误,通过不断输出1找出那个错误发生的位置(若回答是>那这就是错误).此后每隔k次就会有一个错误发生,判断出来即可. 3.k > n.不能用上面的方式,否则回答次数会超过2n.因为k>n,所以在2n次问答中只会出现一个错误,所以通过每次输出两个同样的数,判断是否出现错误.当两次得到应答不一致时,就说明错误发生,再输出一个同样的数确定是非.此外便可以正常二分. *清…
A. 坑爹的售票机 题意 用\(1,5,10,25,50,100\)的纸币买\(n\)张单价为\(p\)的船票,且一次性最多买\(k\)张,求钱数恰好时最少需要多少张纸币. Hard: \(n,k,p\leq 10^9\) 思路 Easy: dp Hard: dp + 瞎搞 当钱数过大或者张数过多时,(由直觉)其中的大部分都是遵循一定的规律来取的,只有剩余的一小部分需要dp. Code Easy #include <bits/stdc++.h> #define F(i, a, b) for (…
题目链接 Description 给定一个有 \(n\) 个点和 \(m\) 条边的无向图,其中每一条边 \(e_i\) 都有一个权值记为 \(w_i\) . 对于给出的两个点 \(a\) 和 \(b\) ,求一条 \(a\) 到 \(b\) 的路径,使得路径上的边权的 \(OR\)(位或)和最小,输出这个值.(也就是说,如果将路径看做边的集合 \(\{e_1,e_2,-,e_k\}\),那么这条路径的代价为 \(w_1\ OR\ w_2\ OR\ -\ OR\ w_k\),现在求一条路径使得其…
985月赛我只喜欢ECNU.jpg A. 打工时不可能打工的 Time limit per test: 2.0 seconds Memory limit: 256 megabytes 我 Ayano 就是破产,吃白菜,从这里跳下去,也绝对不打一天工! 然而现实是,没有钱就还是得打工的,否则生活无法继续啊. 现在你已经身无分文,信用卡也不欠钱,n 天后就是你的信用卡最后还款期,你必须在第 n 天结束时还清所有的借款.(这 n天里你通过信用卡借的款项也必须在那时还清)你知道接下来 n 天每天打工的收…
985月赛,当时鸽了,现在想补一补 A. 石头剪刀布的套路 Time limit per test: 1.0 seconds Memory limit: 256 megabytes 现在有一种石头剪刀布锦标赛.采取 100 局胜负制.对战 100 局,扣掉平局,谁赢得多谁就取得最终的胜利. zzz 同学天天玩石头剪刀布,从而总结出了一套提高石头剪刀布胜率的方法.这套方法重点在于利用人的心理.石头剪刀布这三者,你可能觉得你是随机选择的,但其实不然.你还是会产生一定的偏向性.在若干局游戏后,有的人出…
23333333333333333 由于情人节要回家,所以就先只放代码了. 此题是与我胖虎过不去. [E. 出老千的 xjj] #include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> #include<algorithm> using namespace std; ; #define ll long long int i,j,n,k,x; ll p[maxn+…
EOJ Monthly 2019.2 题解(B.D.F) 官方题解:https://acm.ecnu.edu.cn/blog/entry/320/ B. 解题 单测试点时限: 2.0 秒 内存限制: 1024 MB “我把房门上锁,并非为了不让她进去,而是为了防止自己逃到她身边”. 她又被数学难住了.QQ 小方当然是不会对女生说”不”的. 她的数学题是这样的,她得到了一个十进制大整数,这个大整数只包含 1 - 9 这 9 个数字. 现在,要求选出其中连续的一段数字,把其他未被选中的数字全部变成 …
###2018.10 A.oxx 的小姐姐们 oxx 和他的小姐姐(们)躺在图书馆前的大草坪上看星星. 有强迫症的 oxx 想要使得他的小姐姐们正好躺成一块 n×m 的长方形. 已知小姐姐的形状是 1×p 的长方形(可以横着或竖着躺).小姐姐从 1 到 nm 编号总共有 nm 个(如果可以的话,绝对够用). P.S. 小姐姐是 1×p 的是因为她们比较苗条. 输入 输入三个整数 n, m, p (1≤n,m,p≤100,p 是质数). 输出 如果不行,输出 No. 否则输出 Yes.随后输出 n…
题目链接:https://acm.ecnu.edu.cn/contest/247/problem/E/ 这道题是cf原题: Codeforces Round #608 (Div. 2) E. Common Number Cuber QQ 正在刷 EOJ 上的水题,他正在做的一道题目是这样的. 给定一个正整数 x : 如果 x 是奇数的话,则变幻成 x−1 : 如果 x 是偶数的话,则变幻成 x*2 . 如此往复地执行这个操作,直到 x 变为 1 . 显然这对于 Cuber QQ 来说过于简单了.…
题解 A 回收卫星 #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using namespace std; #define y1 y11 #define fi first #define se second #define pi acos(-1.0) #define LL long long //#define mp make_pair #defin…
题目链接: https://acm.ecnu.edu.cn/contest/140/problem/F/ 题目: 思路: 因为方差是用来评估数据的离散程度的,因此最优的m个数一定是排序后连续的,所以我们可以先排序然后对每m个连续的数取个min. 代码实现如下: #include <set> #include <map> #include <deque> #include <queue> #include <stack> #include <…
题目链接: https://acm.ecnu.edu.cn/contest/140/problem/D/ 题目: 思路: 我们知道一个数在某一个进制k下末尾零的个数x就是这个数整除kx,这题要求刚好末尾有m个0,还需要除去高位为0的情况,因此这题答案就是r / kx-(l-1)/kx-(r/kx+1-(l-1)/kx+1). 代码实现如下: #include <set> #include <map> #include <deque> #include <queue…
任意门:https://acm.ecnu.edu.cn/contest/140/problem/D/ D. 进制转换 单测试点时限: 2.0 秒 内存限制: 256 MB “他觉得一个人奋斗更轻松自在.跟没有干劲的人在一起厮混,只会徒增压力.” QQ 小方决定一个人研究研究进制转换. 很快,QQ 小方就遇到问题了.他现在想知道在十进制范围 [l,r] 内有多少整数满足在 k 进制下末尾恰好有 m 个 0. 比如在十进制下的 24 在二进制下是 11000,我们称十进制下的 24 在二进制下末尾恰…
传送门:https://acm.ecnu.edu.cn/contest/126/ C. 唐纳德先生与这真的是签到题吗 单测试点时限: 6.0 秒 内存限制: 1024 MB 唐纳德先生在出月赛的过程中,准备了一个签到题:给定一个长度为 n 的非负整数序列 a1,a2,…,an,对于所有的 i,j (1≤i<j≤n),求出 ai+aj,并对这 n(n−1)2 个数进行排序输出. 很不幸的是,唐纳德先生把题目的输入搞丢了,现在只剩下输出.你能把输入还原出来吗? 输入 输入共 t (1≤t≤300)…
A. 钝角三角形 单点时限: 3.0 sec 内存限制: 512 MB QQ 小方以前不会判断钝角三角形,现在他会了,所以他急切的想教会你. 如果三角形的三边长分别为 a, b, c (a≤b≤c),那么当满足 a2+b2<c2 且 a+b>c 的时候,这个三角形就是一个由三边长为 a, b, c 构成的钝角三角形. 单单讲给你听肯定是不够的,为了表现自己,QQ 小方现在要考考你. 现在 QQ 小方会给你一个包含 3n 个整数的集合,分别是 {2,3,4,⋯3n,3n+1} ,他想让你将这个集…
// 因为是中文题面就偷一次懒不写题意啦QAQ // 各种大作业然后又要期末还不知道什么时候能补题QAQ A. 唐纳德先生和假骰子 直接模拟 #include <bits/stdc++.h> using namespace std; int a[6], b[6], cnt[20]; typedef long long LL; int main() { int p; scanf("%d", &p); for (int i = 0; i < 6; ++i) sca…
传送门 题意: 统计\(k\)元组个数\((a_1,a_2,\cdots,a_n),1\leq a_i\leq n\)使得\(gcd(a_1,a_2,\cdots,a_k,n)=1\). 定义\(f(n,k)\)为满足要求的\(k\)元组个数,现在要求出\(\sum_{i=1}^n f(i,k),1\leq n\leq 10^9,1\leq k\leq 1000\). 思路: 首先来化简一下式子,题目要求的就是: \[ \begin{aligned} &\sum_{i=1}^n\sum_{j=1…
原题 T1 纸条 题目大意: 给出一个长度为n的字符串,其中m位未知,对于每一位未知的字母,有k个备选字母,最终答案为备选字母按字典序排序后的第x个. 题解: 签到题-- 按照题目意思直接写就可以了. #include<cstdio> #include<algorithm> #define N 500010 typedef long long ll; using namespace std; int n,m,k,num[N]; ll x; char s[N],a[N][30]; i…
题目传送门 题意: 在一个n个点,m条边的有向无环图中,求出所有从1到n 的路径的中位数的最大值 一条路径的中位数指的是:一条路径有 n 个点, 将这 n 个点的权值从小到大排序后,排在位置 ⌊n2⌋+1 上的权值. 思路: 看到权值为1~1e9,可以想到用二分答案,然后我们在验证的时候 可以将小于mid的边权设为-1,大于为1这样遍历一遍序列加起来的值 刚好为0 代码: #include<bits/stdc++.h> using namespace std; typedef long lon…
题目传送门 题意: 你可以询问一个三维坐标,机器会告诉你这个坐标在不在目标圆中, 并且(0,0,0)是一定在圆上的,叫你求出圆心坐标 思路: 因为(0,0,0)一定在圆上,所以我们可以把圆心分成3个坐标轴上 就是求x的时候,其他坐标都为0,而且可以确定一个在x的正半轴,一个 在负半轴,所以我们可以二分求出 另外注意数据(l+r)是数据会超过long long 代码: #include<bits/stdc++.h> using namespace std; typedef long long l…
题意: 一张由 n 个点,m 条边构成的有向无环图.每个点有点权 Ai.QQ 小方想知道所有起点为 1 ,终点为 n 的路径中最大的中位数是多少. 一条路径的中位数指的是:一条路径有 n 个点,将这 n 个点的权值从小到大排序后,排在位置 ⌊n2⌋+1 上的权值. 思路(官方题解): 考虑二分答案,我们需要验证路径最大的中位数是否 ≥mid . 我们把所有的点权做 −1/1 变换,即 ≥mid 的点权变为 1 ,否则变为 −1 . 根据题面路径中位数的定义,我们可以发现,如果这条路径的中位数 ≥…
"欢迎您乘坐东方航空公司航班 MU5692 由银川前往上海......" "我们的飞机很快就要起飞了,请收起小桌板,摘下耳机......" 收起了小桌板,摘下了耳机,Cuber QQ 突然无所事事了. 放耳机进书包的时候,Cuber QQ 无意带出了一些小纸条.是以前的回忆. 纸条在书包中已经存在了不知道多久.水渍泛黄了纸张,有些字他不能认出来. 具体来说,信件是一个包含 N 个字母的单词.其中有 M 个难以辨认的字母,用字符 # 代替. Cuber QQ 用残存的…