[杂题] Codeforces 772D VK Cup 2017
来源:互联网 发布:去影楼做网络销售 编辑:程序博客网 时间:2024/04/28 06:18
一个集合的 子集的和的平方 的和 就记一下
处理出
然后再把前缀和倒回去 就好了
#include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; return p1==p2&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)?EOF:*p1++;}inline void read(int &x){ char c=nc(),b=1; for (;!(c>='0' && c<='9');c=nc()) if (c=='-') b=-1; for (x=0;c>='0' && c<='9';x=x*10+c-'0',c=nc()); x*=b;}const int N=1000000;const int P=1e9+7;const int pw[]={1,10,100,1000,10000,100000,1000000};inline void add(int &x,int y){ x+=y; if (x>=P) x-=P;}int n;int f[N][3];int g[N];int _pow[N+5];int main(){ int x; freopen("t.in","r",stdin); freopen("t.out","w",stdout); _pow[0]=1; for (int i=1;i<=N+2;i++) _pow[i]=_pow[i-1]*2%P; read(n); for (int i=1;i<=n;i++) read(x),f[x][0]++,add(f[x][1],x),add(f[x][2],(ll)x*x%P); for (int j=0;j<6;j++) for (int i=N-1;i;i--) if (i/pw[j]%10!=9) for (int t=0;t<3;t++) add(f[i][t],f[i+pw[j]][t]); for (int i=0;i<N;i++) g[i]=((ll)f[i][2]*_pow[f[i][0]-1]%P+((ll)f[i][1]*f[i][1]%P+P-f[i][2])*_pow[f[i][0]-2]%P)%P; for (int j=0;j<6;j++) for (int i=0;i<N;i++) if (i/pw[j]%10!=9) g[i]=(g[i]+P-g[i+pw[j]])%P; ll ans=0; for (int i=0;i<N;i++) ans^=(ll)g[i]*i; printf("%lld\n",ans); return 0;}
阅读全文
0 0
- [杂题] Codeforces 772D VK Cup 2017
- Codeforces VK Cup 2017
- [几何] Codeforces 772B VK Cup 2017
- [最短路 杂题] Codeforces 806D VK Cup 2017 Round 3 D. Perishable Roads
- [数论 DAG最长路] Codeforces 772C VK Cup 2017
- [交互 点分治] Codeforces 772E VK Cup 2017
- Codeforces VK Cup 2015
- [Codeforces VK Cup 2016
- Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2) A -- D
- Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2) D. Volatile Kite
- 【树形DP】 codeforces VK Cup 2012 Round 1 D
- Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2) D (简单计算几何)
- VK Cup 2017
- VK Cup 2017
- VK Cup 2017
- VK Cup 2017
- VK Cup 2017
- [线段树 杂题] Codeforces 806E VK Cup 2017 Round 3 E. Blog Post Rating
- 输出xxx录下的所有后缀名和对应的个数(递归)
- jquery实现的jsonp跨域
- Spring 程序式事务管理
- less转css
- csu 点到圆弧的最短距离
- [杂题] Codeforces 772D VK Cup 2017
- Linux入门—20170613
- Kotlin开发之旅《一》— 初学者Kotlin基础必备
- Fisher线性判别
- SE02 Unit02 基本IO操作 、 文本数据IO操作
- Session Cursor 的相关参数
- python 实现斯坦福机器学习ex2.2
- 常用C#字符串函数大全
- Webpack 入门指南