2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow(最大流/规律)
来源:互联网 发布:天互数据在哪 编辑:程序博客网 时间:2024/05/29 19:09
题目:https://nanti.jisuanke.com/t/17118
题意:0~n-1个点,任意两点i,j,流量为i xor j,求0~n-1的最大流
思路:规律
首先打表
以下参考http://blog.csdn.net/ShiWaiGaoRen12345/article/details/78007721
题解:
打印出来相邻两个数的差是有规律的, 差值的规律如下:
2^0+1 第一次出现的位置为2^1, 第二次出现的位置为2^1+2^0, 接下来出现的位置依次为:2^1+2^0+k*2^1;
2^2+1 第一次出现的位置为2^2, 第二次出现的位置为2^2+2^1, 接下来出现的位置依次为:2^2+2^1+k*2^2;
2^4+1 第一次出现的位置为2^3, 第二次出现的位置为2^3+2^2, 接下来出现的位置依次为:2^3+2^2+k*2^3;
2^6+1 第一次出现的位置为2^4, 第二次出现的位置为2^4+2^3, 接下来出现的位置依次为:2^4+2^3+k*2^4;
依次类推…..
代码:
#include<bits/stdc++.h>using namespace std;typedef long long ll;const int MOD = 1000000007;ll p[205] = {1};int main(){ for(int i = 1;i <= 62*2;i++) p[i] = p[i-1]*2%MOD; ll n; while(~scanf("%lld",&n)) { ll ans = 1,sum = 1; for(int i = 1;i <= 62;i++) { sum <<= 1; if(sum >= n) break; ll tmp = p[(i-1)*2] + 1;//差值 ans = (ans + tmp) % MOD; if(sum + sum/2 < n) ans = (ans + tmp) % MOD; else continue; if(sum + sum/2 < n) ans = (ans + tmp*(((n-1-(sum+sum/2))/sum)%MOD)) % MOD; } printf("%lld\n",ans); }}
阅读全文
0 0
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow(最大流/规律)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E.Maximum Flow(找规律?)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E.Maximum Flow【规律】
- 计蒜客-2017 ACM-ICPC 亚洲区(西安赛区)网络赛E题Maximum Flow(网络流打表找规律)
- Maximum Flow 规律题 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- 计蒜客 17118 Maximum Flow(2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Maximum Flow
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 C.Sum(找规律)
- 计蒜客17116 Sum 找规律 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- C. Sum 数学/规律 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 C.Sum(找规律)
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛
- eclipse for python
- 仿制一个简单的聊天软件
- 【第二周】项目1
- java Web应用
- iOS【YTKNetwork源码解析】
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow(最大流/规律)
- Unity Shader 内置函数
- CSS3之创建3D场景
- 介个HOW 玩?
- HDU2084 数塔 动态规划入门-递推
- spring拦截器、与filter的区别
- 论文级别划分
- "ls"功能的实现
- 2395:Out of Hay(最小生成树)