题目大意:给定x,y,zx,y,z,求x⊕(x+z)⊕(x+2z)⊕...⊕(x+kz)x\oplus(x+z)\oplus(x+2z)\oplus...\oplus(x+kz),其中y−z<x+kz≤yy-z<x+kz\leq y
原创
2023-04-19 00:13:04
26阅读
Description \(n\)个城市,\(k\)个国家,\(m\)条边,边两边至少有一个首都,问是否存在合法解。\(1\leqslant k\leqslant n,m\leqslant 10^6\) Solution 2-SAT. 有几个限制条件一起列上... 这样建图是\(O(n^2)\)的.
原创
2021-08-04 09:29:42
35阅读
题意$n(1 \le n \le 1000000)$个城市,$k(1 \le k \le n)$个国家,$m(1 \le m \le 1000000)$条边。要求每个国家有且仅有一个首都,每条边两端的城市至少要有一个首都。判断是否有解。 分析满足性问题。而且每个城市只有两种情况,首都or不是首都。...
原创
2021-08-11 10:45:21
57阅读
http://www.elijahqi.win/archives/3465 Description 有n个城镇被分成了k个郡,有m条连接城镇的无向边。 要求给每个郡选择一个城镇作为首都,满足每条边至少有一个端点是首都。Input 第一行有三个整数,城镇数n(1<=n<=10^6),边数m(0<=m<=10^6),郡数k(1<=k<=n)。 接下来...
原创
2022-08-08 13:27:20
22阅读
数据类型之 Numberpython number 数据类型用于存储数值。 数据类型是不容许改变的。 这就意味着如果改变 number 数据类型的值,将重新分配内存空间。python支持四种不同数值类型整型 (int)-通常被称为整型或整数,是正或负整数,不带小数点长整型(long intergers)-无线大小的整数,整数后面是一个大写或小写的L浮点型(float)-浮点型又整数部分或者小数部分
转载
2023-10-16 06:11:05
314阅读
题目链接 "BZOJ3495" 题解 每个城市都有选和不选两种情况,很容易考虑到2 sat 边的限制就很好设置了,主要是每个郡只有一个首都的限制 我们不可能两两之间连边,这样复杂度就爆炸了 于是乎就有了一个非常厉害的方法: 前缀后缀和 我们令$1$表示选,$0$表示不选,维护一个郡的前缀和、后缀和
原创
2021-07-20 14:39:29
18阅读
测试地址:Riddle 题目大意:n(≤106)" role="presentation" style="position: relative;">n(≤106)n(≤106)个城市被划分成k(≤n)" role="present...
转载
2018-05-27 20:43:00
11阅读
2评论
至强 W9-3495X采用10nm制作工艺五十六核心一百一十二线程CPU主频 1.9GHz动态加速频率 4.8GHz 热设计功耗(TDP) 35
原创
2023-10-01 10:17:40
532阅读
http://poj.org/problem?id=1222http://poj.org/problem?id=1830http://poj.org/problem?id=1681http://poj.org/problem?id=1753http://poj.org/problem?id=3185这几个题目都类似,都可以使用高斯消元来求解一个模2的01方程组来解决。有时候需要枚举自由变元,有的是判断存不存在解POJ 1222EXTENDED LIGHTS OUT普通的问题。肯定有唯一解。肯定枚举第一行去做,也可以使用高斯消元。 1 /* **************************.
转载
2013-08-17 22:12:00
142阅读
2评论
Maximum sumTime Limit: 1000MSMemory Limit: 65536KTotal Submissions: 30704Accepted: 9408DescriptionGiven a set of n integers: A={a1
原创
2022-03-04 17:40:02
114阅读
Common SubsequenceTime Limit: 1000MSMemory Limit: 10000KTotal Submissions: 34477Accepted: 13631DescriptionA subsequence of a gi
原创
2022-03-04 17:37:50
117阅读
刷了这两道枚举的题。用的都是bfs。1753这道题用到二进制的压缩方法。不管我感觉不压缩也不会超时什么的。其次的方法就是中规中矩的bfs。2965中。除了bfs,换
原创
2022-08-05 16:00:15
56阅读
这里介绍怎么求k短路
A*搜索 估价函数f[i]=g[i]+h[i];
在这里g[i]表示到达点i当前路径长,h[i]表示点i到达终点的最短距离
在搜索中,每次都取队列估价函数值最小的点,然后把它所能到达的点更新进入队列
显然这需要一个优先队列来维护(heap)
当终点第k次出队时,当前路径长度就是k短路
1 const max=1000000000;
2 type link=^nod
转载
2014-03-02 11:02:00
118阅读
2评论
二分匹配的灵活运用
3041还是比较好想的,考虑到横排/竖排射一枪就能搞定这一行/一列的所有点,
我们以行数为点集x,列数为点集y,在目标点(xi,yi)之间连一条边
这样最小射击次数=最小点覆盖(边两端点至少有一个点在覆盖集中)=最大匹配
poj2226是它的加强版
这里一块木板不能覆盖非泥泞点,也就是说一块木板不一定能搞定那一行所有的点
于是我们考虑到将连续的泥泞点标号,表示这些泥泞点是由哪个
转载
2014-03-25 21:43:00
124阅读
2评论
两道很不错的dp
3186很神似回文词,合并石子之类的问题;
一开始不知道怎么在dp方程中体现权值天数,很来才想起来
对于一段区间[i,j],里面的东西必然是要卖完的
又因为只能从两头开始卖,所以
dp[i,j]=max(dp[i+1,j],dp[i,j-1])+sum[i,j];
这样就体现出先后卖的差别;
最后答案很显然是dp[1,n];
而poj3267,dp方程不好讲,直接上代码;
转载
2014-01-21 22:56:00
186阅读
2评论
其实这两题都是基础的线段树,但对于我这个线段树的初学者来说,总结一下还是很有用的;
poj3468显然是线段树区间求和,区间更改的问题,而poj2528是对区间染色,问有多少种颜色的问题;
线段树的建立和求和附代码,还是比较简单的;
这里想说的是区间修改,用到了了lazy思想:打标记;
拿poj2528举例,比如对区间[l,r]染色,我们只要在线段树中,被[l,r]覆盖的最大子区间[p,q]上标记
转载
2013-11-30 15:18:00
125阅读
2评论