摘要: 我们发现这个原数为奇数的条件比较神秘,于是我们考虑每次把这个数字第一位 \(1\) 给干了。 考虑怎么构造。 令 $d=\lfloor \log_2 x \rfloor $ 令 \(x=1abc1\) \(x1=1abc10000\) \(x2=1abc0abc1\) \(x3=x2+x1=1abc 阅读全文
posted @ 2025-03-22 11:56 houpingze 阅读(13) 评论(0) 推荐(0)
摘要: https://www.luogu.com.cn/problem/CF1472E 题目条件限制转化为: \[\max(a,b)>\max(c,d) \]\[\min(a,b)>\min(c,d) \]然后随便做。 阅读全文
posted @ 2025-03-21 23:52 houpingze 阅读(15) 评论(0) 推荐(0)
摘要: Trick 1:原题中的取反操作要求两个连续的数都相同,那么我们可以将奇数位上的数取反,然后转化为交换操作。交换操作有一个特点,就是可以保证交换的两个数不相等,对应原字符串中就是两个数相等,这样很巧妙的满足了这个条件。 两个字符串可以被操作,当且仅当它们两长度相等且 \(1\) 的个数相等。 设第一 阅读全文
posted @ 2025-03-21 20:19 houpingze 阅读(46) 评论(2) 推荐(0)
摘要: #include<bits/stdc++.h> #define int long long #define rep(i,x,y) for(int i=x;i<=y;i++) using namespace std; vector<int>G[514154]; int n,m,e; int ans[6 阅读全文
posted @ 2025-03-21 17:45 houpingze 阅读(12) 评论(0) 推荐(0)
摘要: #include<bits/stdc++.h> #define int long long #define rep(i,x,y) for(int i=x;i<=y;i++) using namespace std; vector<int>G[514154]; int n,m,e; int ans; 阅读全文
posted @ 2025-03-21 17:40 houpingze 阅读(11) 评论(0) 推荐(0)
摘要: P3533 [POI 2012] RAN-Rendezvous 题目描述 译自 POI 2012 Stage 1. 「Rendezvous」 给定一个有 \(n\) 个顶点的有向图,每个顶点有且仅有一条出边。每次询问给出两个顶点 \(a_i\) 和 \(b_i\),求满足以下条件的 \(x_i\) 阅读全文
posted @ 2025-03-20 21:59 houpingze 阅读(11) 评论(1) 推荐(0)
摘要: 很妙的一道题(吧? 假如我们对于每一个$i(1\leq i \leq n)$,都计算出$i$和某一个距离相差为$2$的$j$的联合权值,大概是这样一个代码: void dfs(int fa,int st,int x,int cnt){ if(cnt==2){ mx=max(mx,w[x]*w[st] 阅读全文
posted @ 2021-08-31 21:52 houpingze 阅读(140) 评论(1) 推荐(0)
摘要: 大家好,我是hpz,我非常喜欢暴力,所以我就用暴力通过了此题。 这一题裸暴力dfs想都别想,所以必须大力优化,本篇题解主要就是讲优化。 记忆化。 这是比较常见的优化。 我们在dfs函数中,一般需要有$\text\((当前节点编号),和\)\text\((目前走过的路径权值),我们可以定义一个一维数组 阅读全文
posted @ 2021-07-02 20:35 houpingze 阅读(83) 评论(0) 推荐(0)
摘要: 这里给一种~~很容易想到~~的构造方法( 首先,$a_i\leq10^9$,我们找一个大于$10^9$的**质数**:$10^9+7$。 由于修改后的$a_i\leq2*10^9$,所以我们可以填写$10^9+7$这个大质数。 至于为什么要填大质数?因为一个质数$x$,和一个正整数$y$,如果$x 阅读全文
posted @ 2021-05-08 18:17 houpingze 阅读(111) 评论(0) 推荐(0)