摘要: 专门写一个随笔记录一些容易忘记的知识点 1.一个数的倍数求余数打表会发现发的余数每十次就循环一次,其实很好想到的按倍数乘1011类似的 是在找不到规律就直接打表找规律 2.string s1(r,'R'),s2(u,'U');string类型的定义第一个是数量第二个是字符 3.求模带括号,分解乘法求 阅读全文
posted @ 2020-07-18 17:30 waryan 阅读(93) 评论(0) 推荐(1) 编辑
摘要: #include<bits/stdc++.h> #define INF 0x3f3f3f3f #define DOF 0x7f7f7f7f #define endl '\n' #define mem(a,b) memset(a,b,sizeof(a)) #define debug(case,x); 阅读全文
posted @ 2020-07-18 17:30 waryan 阅读(223) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) A. Kids Seating 题意 给你一个数n,让你输出n个数,在1~4n范围内,且他们之间任意两个数都不能直接相除,且gcd不等于1 思路 因为要使他们gcd不等 阅读全文
posted @ 2021-01-28 17:44 waryan 阅读(69) 评论(1) 推荐(0) 编辑
摘要: Codeforces Round #697 (Div. 3) A. Odd Divisor 题意 给你一个n(\(2\leq n\leq 10^{14}\))问你n是否有奇数因子不包括1但包括它本身。 思路 在质因数分解时只有2是偶数,所以不断对一个数除以2,然后判断最后是不是为1就可以。 #inc 阅读全文
posted @ 2021-01-28 17:43 waryan 阅读(73) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #690 (Div. 3) B. Last Year's Substring 题意 让你在字符串中删除一段连续的区间是否能凑齐2020 思路 如果要删除一段连续的区间那么直接讨论所有情况,因为2020只有4个字符。 全在左,全在右.... #include<bits 阅读全文
posted @ 2021-01-28 17:42 waryan 阅读(51) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #695 (Div. 2) C. Three Bags 题意 给你三个集合,然后让你将其变为1个,问你最大和。 每次操作可以从两个不同的集合中选择a,b然后进行a - b后将a-b放回a所在集合,b丢弃 思路 参考:https://www.cnblogs.com/J 阅读全文
posted @ 2021-01-22 23:02 waryan 阅读(95) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round #692 (Div. 2, based on Technocup 2021 Elimination Round 3) C. Peaceful Rooks 题意 给你一个n*n的表格和m个(m<n)棋子,棋子不会在同一行或同一列中出现两个,问你最少要多少步才能将其全部 阅读全文
posted @ 2021-01-22 11:07 waryan 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 题意 给你n堆石头,每次你能让相邻的两个石头-1,且开局时你有一个特殊操作可以交换两个相邻的堆。问你能否实现将所有的堆都减为0 思路 考虑消除过程: 给定一个序列:\(a_1,a_2,a_3,a_4...a_{n-2},a_{n-1},a_n\) 正向消除: \[ a_1-0, a_2-(a_1-0 阅读全文
posted @ 2021-01-21 18:05 waryan 阅读(99) 评论(0) 推荐(0) 编辑
摘要: B. Suffix Operations 题意 给你n个数,然后有两个规则: 给后缀增1 给后缀减1 其中有一个特殊操作,可以任意修改一个数字。 问你使n个数变为相同的最小操作书是多少。 思路 考虑不加特殊操作的使$a_{i+1}$变为$a_i$的最小代价,\(ans = abs(a_{i + 1} 阅读全文
posted @ 2021-01-19 10:37 waryan 阅读(39) 评论(0) 推荐(0) 编辑
摘要: 题意 给你一个n*n的由0~9组成的矩阵,问你相同数组组成的三角形,其中一条边必须平行于x轴或y轴,而且可以自己随机加一个点,然后问你0~9数组分别组成的三角形的面积乘以2的最大值。 思路 首先找出每个数字的x轴方向最大最小,y轴方向最大最小,然后去遍历每个相应的点和这些最大最小组合后的最大面积。 阅读全文
posted @ 2021-01-19 10:35 waryan 阅读(69) 评论(0) 推荐(0) 编辑
摘要: D. Divide and Summarize 题意 给你n个数,q次询问,问你能否具有满足和为s的序列。 思路 再求其有多少种和时需要使用$mid = max + min >> 1$来寻找有多少种和。 然后dfs,但是需要判断一下左面或者右面全部相等情况,否则会爆栈 #include<bits/s 阅读全文
posted @ 2021-01-18 23:20 waryan 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 题意 给你一个长度为n的乱序数组,再给你m次操作每次操作包含r和p分别表示可以按升序排序前r位且使用这个的概率为p,问你这些任意用后能够使数组变为升序的概率为多少(每次使用操作都是对原数组进行操作) 思路 反向思考,然后1减去不能变为的即可。 为了能够让一个操作使原数组变得有序那么必须让r大于原数组 阅读全文
posted @ 2021-01-18 23:14 waryan 阅读(39) 评论(0) 推荐(0) 编辑
摘要: B. Find the Spruce 题意 给你一个n行m列由*或者.组成的图形,一个图形高度为k时当且仅当满足$1 \leq i \leq k$时,第$x + i - 1$行必须满足在区间$[y - i + 1, y +i-1]$全部都是'*' 思路 暴力解决方法 我们暴力判断当前行是否满足,如果 阅读全文
posted @ 2021-01-18 21:34 waryan 阅读(49) 评论(0) 推荐(0) 编辑
摘要: D. Ceil Divisions 题意 给你n个数,每次可以这样操作$(x\not\equiv y,a_x = \lceil{a_y/a_x}\rceil)$,问你最多操作n+5次使最后变为一个2和n-1个1 思路 首先考虑时间复杂度$3 \leq \sum n \leq 2*10^5$我们发现必 阅读全文
posted @ 2021-01-18 21:18 waryan 阅读(53) 评论(0) 推荐(0) 编辑
摘要: C. Building a Fence 题意 给你n个基础高度和一个栅栏的长度k,如果建造这整个栅栏的过程可以满足所有规则,那么输出yes 规则是: 两个连续的相邻栅栏之间必须有长度为1的接触 第一个和最后一个栅栏必须和地接触 需要注意的是除了第一个和最后一个其他的栅栏也均不能超过地的高度大于$k- 阅读全文
posted @ 2021-01-18 20:55 waryan 阅读(69) 评论(0) 推荐(0) 编辑
摘要: G. Moving to the Capital 题意 给你n个点m条长度为1的单向边,其中顶点1为中心城市,然后d[i]表示$1->i$的距离。 要求:有一次特殊操作可以从$d[i] > d[j], i → j$,其他的都只能$d[i] < d[j], i →j$。问你各个顶点在符合要求的条件下移 阅读全文
posted @ 2021-01-18 20:30 waryan 阅读(70) 评论(0) 推荐(0) 编辑
摘要: E. Correct Placement 题意 你有n个朋友,每个朋友具有$h_i,w_i$两个属性,让你在满足条件下,求第i个朋友是否具有能放在其前面的朋友,输出对应的id 思路 因为h,w可以交换,所以我们将所有的h,w中大的作为y,小的作为x,然后按一定的规则排序。 排序后我们用双指针去寻找在 阅读全文
posted @ 2021-01-17 19:34 waryan 阅读(69) 评论(0) 推荐(0) 编辑