2017年icpc西安网络赛 Maximum Flow (找规律+数位dp)
2017-09-22 22:14
176 查看
题目
https://nanti.jisuanke.com/t/17118
题意
有n个点0,1,2...n-1,对于一个点对(i,j)满足i<j,那么连一条边,边权为i xor j,求0到n-1的最大流,结果取模,n<=1e18
分析
可以写个最大流对数据找规律,但没找出来……
然后只能取分析了,首先最大流等价于最小割
明确一定,0->n-1这个要先割掉
然后我们贪心,希望有一些点割掉与0相连的边,一些点割掉与n-1相连的边
我们去观察每个点与0相连和与n-1相连的两条边权值,容易发现前面若干个左边那条边边权小,后面若干个右边那条边边权小
我们可以把前半部分的取左边,后半部分取右边,具体的,分界线就是n-1二进制最高位1对应的数字
然后问题就变成求他们的和,第一部分好求,主要第二部分求和
转换一下问题,变成了求1 xor x + 2 xor x + 3 xor x + ... + n xor x
这里可以数位dp解决,值得注意的是这里数位dp求的是满足数位的和,要先一遍数位dp求出对应状态的数字个数,然后再一遍数位dp求出贡献
https://nanti.jisuanke.com/t/17118
题意
有n个点0,1,2...n-1,对于一个点对(i,j)满足i<j,那么连一条边,边权为i xor j,求0到n-1的最大流,结果取模,n<=1e18
分析
可以写个最大流对数据找规律,但没找出来……
然后只能取分析了,首先最大流等价于最小割
明确一定,0->n-1这个要先割掉
然后我们贪心,希望有一些点割掉与0相连的边,一些点割掉与n-1相连的边
我们去观察每个点与0相连和与n-1相连的两条边权值,容易发现前面若干个左边那条边边权小,后面若干个右边那条边边权小
我们可以把前半部分的取左边,后半部分取右边,具体的,分界线就是n-1二进制最高位1对应的数字
然后问题就变成求他们的和,第一部分好求,主要第二部分求和
转换一下问题,变成了求1 xor x + 2 xor x + 3 xor x + ... + n xor x
这里可以数位dp解决,值得注意的是这里数位dp求的是满足数位的和,要先一遍数位dp求出对应状态的数字个数,然后再一遍数位dp求出贡献
相关文章推荐
- 2017 ACM-ICPC西安赛区网络赛 Maximum Flow【打表找规律】
- 计蒜客 17118 Maximum Flow(2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E)
- 计蒜客-2017 ACM-ICPC 亚洲区(西安赛区)网络赛E题Maximum Flow(网络流打表找规律)
- HDU 5898 odd-even number (数位DP) -2016 ICPC沈阳赛区网络赛
- 【找规律】计蒜客17118 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow
- Maximum Flow 规律题 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E.Maximum Flow(找规律?)
- hihoCode 1249 A Math Problem ACM/ICPC 2015 Beijing (数位dp+规律)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow(最大流/规律)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E.Maximum Flow【规律】
- Maximum Flow - 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- HDU 6156 2016ICPC网络赛 G: Palindrome Function(数位DP)
- hdu 5898 odd even number(acm/icpc沈阳赛区网络赛,数位DP)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Maximum Flow
- C. Sum 数学/规律 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 C.Sum(找规律)
- 17西安网络赛 规律题 Maximum Flow
- 计蒜客17116 Sum 找规律 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- hdu 5900 QSC and Master(acm/icpc沈阳网络赛,区间DP)
- 【HDU5898 2016 ACM ICPC Asia Regional Shenyang Online G】【数位DP】odd-even number 范围内有多少数字满足奇串长为偶数偶串长为奇数.