摘要: A. Add or XOR 给出两个数a,b,我们可以进行若干次以下的操作: 1.花费x,得到\(a=a+1\) ; 2.花费y,得到\(a=a\oplus 1\) 求把a变成b的最小代价,若不能报告-1; 解析: 1.若a>b,那么看看能不能通过一次异或,即是否能使\(a=a-1\)从而等于b,如 阅读全文
posted @ 2025-07-06 15:22 yoez123 阅读(9) 评论(0) 推荐(0)
摘要: C.小L的位运算 因为交换a,b的代价一样,所以将a,b看作整体,分为00,01,10,11四种,两两相互之间都可以转化,如果最多的一种小于总数的一半,那么一定有一种方法可以将剩下的两两转化直至剩下不到两个,反之所有的都和最多的转化即可 #include <bits/stdc++.h> #defin 阅读全文
posted @ 2025-02-16 15:52 yoez123 阅读(29) 评论(0) 推荐(0)
摘要: A.Tokitsukaze and Absolute Expectation 由于每一部分独立不影响,所以可以将题目转化为每一部分的期望和,即\(ans=E(\sum\limits_{u=2}^{n}|a_i-a_{i-1}|)=\sum\limits_{u=2}^{n}E(|a_i-a_{i-1} 阅读全文
posted @ 2025-02-16 15:52 yoez123 阅读(2) 评论(0) 推荐(0)
摘要: K.智乃的逆序数 冒泡排序的交换次数即为逆序对的个数,所以交换即可创造逆序对。由于给定的数组是连续的所以所有数组按第一个数字大小排序即可得到最少的逆序对,接下来创造逆序对即可,若最后无法创造那么输出NO #include <bits/stdc++.h> #define lowbit(x) ((x)& 阅读全文
posted @ 2025-02-16 15:51 yoez123 阅读(3) 评论(0) 推荐(0)
摘要: C.字符串外串 由D题所知,当长度为K的字符串的头尾在其前后出现过,可爱度即可为K,那么很容易构造出以下序列:{a....z}(长度为n-m的不重复序列){a....z}(a到z的循环);那么在只考虑字符串头(即字母a)在前方出现且位于下标n-m+1的位置,同理考虑字符串尾在后方出现可构造以下序列: 阅读全文
posted @ 2025-01-25 19:13 yoez123 阅读(12) 评论(0) 推荐(0)
摘要: E:双生双宿之错 设变成双生数组后两数分别为\((a,b)\),贪心得到将小的数都变为a,将大的数都变为b为最优解,那么找到a,b即可,对于小数(下标\(1-n/2\))的数而言找到目标数target_a,当变成数x<target_a时,需要的操作数大于变成target_a,同理x>target_a 阅读全文
posted @ 2025-01-24 11:30 yoez123 阅读(49) 评论(0) 推荐(0)
摘要: 题目大意 :给出有\(n\)个点\(m\)条边的图,接下来进行若干次操作,每次操作取出当前图的最小生成树,然后删去这些构成最小生成树的边,知道该图不连通,输出每条边在第几次操作时被删除 思路 :由于构成最小生成树的边数是\(n-1\)条边,所以最多操作次数为\(\lfloor \frac{m}{n- 阅读全文
posted @ 2024-08-14 13:22 yoez123 阅读(58) 评论(0) 推荐(0)
摘要: 题目大意 :给出n个城市m条联通两个城市的无向边,从\(u_i\)到\(v_i\)需要耗费\(t_i\)的时间,你也可以选择进行一次比特跳跃,耗费k*(u|v)的时间 思路 :不难发现,比特跳跃最多跳跃一次。 证明:假设使用两次比特跳跃,a->b,c->d,那么权值为 k(a|b+c|d) ,不如直 阅读全文
posted @ 2024-07-30 20:10 yoez123 阅读(116) 评论(0) 推荐(0)
摘要: 题目大意 :给出n个矩形,求被k个矩形覆盖的面积的并集的期望,输出k为1-n的所一答案 思路 :由于是求期望所以是求出所有情况的和再除以可能的情况,每一种情况中的面积都由--同时被1个矩形覆盖,同时被两个矩形覆盖······同时被k个矩形覆盖组成,而且不难得出当k一定时,取被m个矩形覆盖的面积次数是 阅读全文
posted @ 2024-07-30 19:47 yoez123 阅读(26) 评论(0) 推荐(0)
摘要: A.Bridging the Gap 2 题目大意 :有n个人要划船过河(只有一艘船),每个人有\(h_i\)的体力,每次划船最少要L人,最多R人,划船要消耗船上所有人1的体力,问存不存在一种方案可以让所有人过河。 思路 :首先除了最后一次,前面的都需要有L人把船开回来,所以要有L人体力大于三,即可 阅读全文
posted @ 2024-07-28 13:45 yoez123 阅读(39) 评论(0) 推荐(0)