• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






Object_S

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | | 管理

随笔分类 -  A -- 题解

上一页 1 2 3 4 5 6 下一页

 
Panasonic Programming Contest 2021(AtCoder Beginner Contest 231)
摘要:整体情况 从上次的"交一次过一次"到这次的"乱交,过题数到4个就行",实际上让分数段上移了一个。 但是也要注意到这样的危险:如果是一个要求正确率而非过题数的比赛,就无了。 换句话讲,如果比赛时间长且难度低,就应该稳健A题。 如果比赛时间短且不一定写得完,就应该"疯狂"交题。 细节问题 这次B题妄想用 阅读全文
posted @ 2021-12-11 22:29 Object_S 阅读(122) 评论(0) 推荐(0)
CF1614C Divan and bitwise operations
摘要:写在"基石"之前 位运算有着相对独立性。因此,如果对某些数字进行运算,如果不考虑实际流程和组合,只考虑最终结果的和,可以考虑到:是否可以利用位运算"相对独立性"的性质? 思路1:从十进制到二进制 可以看到,最终要求得的结果其实就是一个序列所有子序列的异或和,但是考虑到位运算的相对独立性,应该可以注意 阅读全文
posted @ 2021-12-09 22:30 Object_S 阅读(78) 评论(0) 推荐(0)
CF830C Bamboo Partition
摘要:对式子进行化简后可得 对左边的式子整体进行因式分解,可以发现d和另一个元素的值最多有一个>=sqrt(k+sigma(a_i))(可由反证法证得) 考虑到可以枚举i,范围为1--sqrt(k+sigma(a_i)),每次将d设为i和(k+sigma(a_i))/i,就可以将所有可能性全部遍历。 #i 阅读全文
posted @ 2021-12-07 15:42 Object_S 阅读(11) 评论(0) 推荐(0)
[CQOI2007]余数求和(除法分块)
摘要:一个性质:n%k=n-k*(n/k);(利用整除的性质) 注意:sigma(i)不需要考虑除法自动向下取整的问题(本身就全都是整数,通项公式本身是绝对正确的,那么在/2之前必然已经是2的倍数了) #include<cstdio> #include<iostream> #define ll long 阅读全文
posted @ 2021-12-07 10:27 Object_S 阅读(58) 评论(0) 推荐(0)
AtCoder Beginner Contest 226
摘要:题目链接:https://atcoder.jp/contests/abc226 Round decimals 题意:给定浮点数 x ,输出 x 四舍五入后的结果 思路:round(val) Counting Arrays 题意:给你 n 个长度为 li 的序列 ai ,判断有多少对 (i,j) 满足 阅读全文
posted @ 2021-11-29 21:07 Object_S 阅读(82) 评论(0) 推荐(0)
Codeforces Round #756 (Div. 3) C. Polycarp Recovers the Permutation
摘要:一开始读错题意了,还以为是给定p求a,只能想到vector/双端队列模拟。 实际上,是给定会输出的数组,让我们求出原数组。 考虑题目给出的性质并根据题意中的模拟过程判断,不难看出原数组中的最大值一定会变成新数组的两端之一,这毫无疑问会是我们判断合法性的关键一步。 除了第一种不合法性,我们还要考虑,是 阅读全文
posted @ 2021-11-26 11:10 Object_S 阅读(96) 评论(1) 推荐(0)
Educational Codeforces Round 117 (Rated for Div. 2) B. Special Permutation
摘要:一开始想到了判断输出-1的充分条件为a、b与(n/2)之间的大小关系,但实际上没有考虑到abs(a-b)大小所带来的后效性影响。 换句话讲,除了贪心地把a,b分别放到最前面和最后面,还分别需要模拟填充和模拟判断,也就是"下苦功夫"。 在这种思路明显的题目中,我们常常要考虑:是否在代码的实现上会遇到困 阅读全文
posted @ 2021-11-24 11:30 Object_S 阅读(44) 评论(0) 推荐(0)
Educational Codeforces Round 117 (Rated for Div. 2) A. Distance
摘要:做法显然,考虑到曼哈顿距离的性质,直接折半即可。考虑到奇数可能不能整除,用另一个奇数进行数字转移即可。 如果两个数字加起来为奇数,就明显只能输出"-1 -1"了。 值得考虑的是,如果0 0,怎么输出呢,答案是:也输出"0 0",而不是将此情况并到"-1 -1"中。 #include<cstdio> 阅读全文
posted @ 2021-11-23 10:52 Object_S 阅读(53) 评论(1) 推荐(0)
Codeforces Round #752 (Div. 2) B. XOR Specia-LIS-t
摘要:一开始怎么都想不到思路。实际上,不能从LIS和DP的角度考虑,而是要从题目要求的东西的性质入手,再结合LIS在当前题目下的特殊性质,才能找到一个比较好的解法。 题目中,分割的每个序列的"值"都是LIS的长度,考虑一种极限情况:分成n个序列。在这种情况下,如果n为偶数,就得到了一个正确的结果("YES 阅读全文
posted @ 2021-11-22 21:42 Object_S 阅读(33) 评论(0) 推荐(0)
Codeforces Round #755 (Div. 2) A. Mathematical Addition
摘要:这种题做的比较少,思路很不清晰,实际上没有思路。 这种题需要考虑特殊情况,即反向构造。考虑:如果x、y本身与u、v相同,那么1+1不等于1。 拓展这个想法,既然我们现在已经可以获得定值,那么可不可以把这个定值拓展为带有未知数的恒等式呢? 像这类题,往往都是构造特殊情况得出答案,且很少使用较高级的数学 阅读全文
posted @ 2021-11-19 22:28 Object_S 阅读(37) 评论(0) 推荐(0)
Codeforces Round #754 (Div. 2) B. Reverse Sort
摘要:卡题原因:将自己的思想代入到了题目要求中。 题目要求一次操作可以操作多个数字,但是我认为要最小化数字数量。 实际上,要么是0次操作,要么是1次操作。 #include<cstdio> #include<iostream> #include<vector> #include<algorithm> us 阅读全文
posted @ 2021-11-19 14:31 Object_S 阅读(47) 评论(0) 推荐(1)
Codeforces Round #754 (Div. 2) A - A.M. Deviation
摘要:看完题立刻想到了对3取模,分别判断0/1。 然而想到了之前草率提交,掉分的惨痛经历,于是打算多进行几次演算,做一下充分性证明。 观察到d(a1,a2,a3)=abs(a1+a3-2*a2),想到:是否可以将(a1+a3)视为一个"整体"(num1),(2*a2)视为另一个"整体"(num2),最小化 阅读全文
posted @ 2021-11-18 21:24 Object_S 阅读(28) 评论(0) 推荐(0)
Codeforces Round #753 (Div. 3)
摘要:B. Odd Grasshopper(https://codeforces.com/contest/1607/problem/B) 找规律。很多时候不容易想到这个题目的性质,也不容易通过数学方法进行总结,就应该考虑是否出题人打算让我们推导确切的公式? 算法竞赛不存在"步骤分",如果一个题目的难度和推 阅读全文
posted @ 2021-11-15 15:10 Object_S 阅读(50) 评论(0) 推荐(0)
YTU EDG Vince Day Training -- 训练赛赛后总结
摘要:整体情况 思考时间用了一个半小时左右,偏长。 写代码的时间和注意力都不足了,就连前缀和也不想写了。 本次训练赛也暴露出了复杂度分析的bug,没有能力分析难以计算复杂度的程序。 A.AND, OR and square sum(CodeForces 1368D) 显然贪心让最大的尽量大,不过场上没有考 阅读全文
posted @ 2021-11-08 15:36 Object_S 阅读(41) 评论(0) 推荐(0)
Codeforces Round #751 (Div. 2) A. Two Subsequences
摘要:显然去除最小的字母,然后输出剩下的字符即可。 但是第一次写忘记了一个特殊情况:所有字母都相等且等于z。写代码时下意识地认为给出的字符串总有小于z的,就算等于z,也可以输出一个z,但没有考虑到此时index没有被更新。 #include<cstdio> #include<iostream> #incl 阅读全文
posted @ 2021-10-25 18:23 Object_S 阅读(68) 评论(0) 推荐(0)
Codeforces Round #750 (Div. 2) C. Grandma Capa Knits a Scarf
摘要:双指针。结合回文串的性质,对于最外面的两个端点,由于每次只可能删除同一种字符,那么如果内部的串可构成回文串,那么外部字符无关紧要,符合无后效性。 值得注意的一点是,双指针不一定两个指针都一起移动,需要每次都判断条件,并进行值的增减。 #include<cstdio> #include<iostrea 阅读全文
posted @ 2021-10-25 14:56 Object_S 阅读(92) 评论(0) 推荐(0)
Codeforces Round #745 (Div. 2) B. Diameter of Graph
摘要:场上思路:发现存在两种特殊情况:边数最小的菊花树和边数最大的完全图。但由于理解错一般无向图直径的定义,不会处理介于菊花图与完全图之间的情况。此外,对于完全图直径为1和菊花图直径为2的性质理解的也不够深刻。 改进:对于题目定义的新概念要思考,同时要注意积累特殊情况的性质(异或和、菊花图等)。 #inc 阅读全文
posted @ 2021-10-22 21:52 Object_S 阅读(201) 评论(0) 推荐(0)
Codeforces Round #745 (Div. 2) A. CQXYM Count Permutations
摘要:由对称性得知,如果一个数字成立(如1234),那么这个数字置反一定不成立(如4321),那么我们可以大胆猜想一个定理:对于长为2*n的序列,这个序列的合法排列数为((2*n)!/2)。 注意,此处有着大量模运算,除法需要使用逆元。 #include<cstdio> #include<iostream 阅读全文
posted @ 2021-10-22 15:10 Object_S 阅读(56) 评论(0) 推荐(0)
ytuoj-3328 快速幂
摘要:场上:快速幂括号里的两个变量忘了开ll了 改进:以后快速幂不要妄想用int #include<cstdio> #include<iostream> #define ll long long using namespace std; const int MOD=1e9+7; ll poww(ll a, 阅读全文
posted @ 2021-10-22 13:12 Object_S 阅读(32) 评论(0) 推荐(0)
Codeforces Round #746 (Div. 2) C. Bakry and Partitioning
摘要:解题思路:由树的归一性和异或的充分性,容易证明在每个点异或和不等于0的情况下,分成的连通块只能是奇数个。由于树的单链性,最终的每个连通块的异或和只能是所有点值的异或和。 考虑到树的性质,再结合异或的性质,发现偶数个连通块都可以化归为同一个连通块,最终可以意识到,在同一棵树上,如果能够分成奇数个连通块 阅读全文
posted @ 2021-10-21 14:16 Object_S 阅读(33) 评论(0) 推荐(0)
 

上一页 1 2 3 4 5 6 下一页