洛谷——P3909 异或之积
P3909 异或之积
题目描述
对于A_1,A_2,A_3,\cdots,A_NA1,A2,A3,⋯,AN,求
(6\times \sum_{i=1}^N\sum_{j=i+1}^N\sum_{k=j+1}^N A_i\times A_j\times A_k)\ mod\ (10^9+7)(6×∑i=1N∑j=i+1N∑k=j+1NAi×Aj×Ak) mod (109+7)
的值。
输入输出格式
输入格式:
第1 行,1 个整数NN。
第2 行,NN个整数A_1,A_2,A_3,\cdots,A_NA1,A2,A3,⋯,AN.
输出格式:
1 个整数,表示所求的值。
输入输出样例
说明
• 对于30% 的数据,3 \le N \le 5003≤N≤500;
• 对于60% 的数据,3 \le N \le 50003≤N≤5000;
• 对于100% 的数据,3 \le N \le 10^6,0 \le A_i \le 10^93≤N≤106,0≤Ai≤109。
将上面给出的式子展开,然后代入数以后找规律,提取公因式加上前缀和处理,然后就好了
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #define N 1000100 #define LL long long #define mod 1000000007 using namespace std; LL n,a[N],s1[N],s2[N],ans; LL read() { LL x=,f=; char ch=getchar(); ;ch=getchar();} +ch-',ch=getchar(); return x*f; } int main() { n=read(); ;i<=n;i++) a[i]=read(); ;i--) s1[i]=(s1[i+]+a[i])%mod; ;i--) s2[i]=(s2[i+]+a[i]*s1[i+])%mod; ;i<=n;i++) ans=(ans+a[i]*s2[i+]%mod); ans=*ans%mod; printf("%lld",ans); ; }
洛谷——P3909 异或之积的更多相关文章
- 洛谷 P3909 异或之积 题解
原题链接 本人看了其它解法,发现本人的解法还是 首创 ! 而且我的解法好像和 \(\times 6\) 没什么关系 -- (如果没 \(\times 6\),我没还不用算逆元) 别人的思路呢,大都是从 ...
- P3909 异或之积
P3909 异或之积 为什么叫做异或之积? 答曰:只要不关乎Alice和Bob就行 做完这道水题,感觉自己弱爆了. 一开始就要考虑暴力\(O(n^3)\)的优化. 然后就注意到了题目中的\(6\)为什 ...
- 洛谷 P3908 异或之和
洛谷 P3908 异或之和 题目描述 求1⨁2⨁⋯⨁N 的值. A⨁B 即 AA, B 按位异或. 输入输出格式 输入格式: 1 个整数 N . 输出格式: 1 个整数,表示所求的值. 输入输出样例 ...
- 【洛谷P3909】异或之积
题目大意:给定一个 N 个数字组成的序列,求 \[ \left(6 \times \sum_{i=1}^{N} \sum_{j=i+1}^{N} \sum_{k=j+1}^{N} A_{i} \tim ...
- 洛谷P3760异或和
传送门啦 传送门啦 一般这种位运算的题都要把每一位拆开来看,因为位运算每个位的结果这和这一位的数有关. 这样我们用s[i]表示a的前缀和,即 $ a[1]+a[2]+....a[i] $ ,然后我们从 ...
- 洛谷——P3908 异或之和
P3908 异或之和 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值. A \bigoplus BA⨁B 即AA , BB 按位异或. ...
- 洛谷—— P3908 异或之和
https://www.luogu.org/problemnew/show/P3908 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值 ...
- 洛谷.5283.[十二省联考2019]异或粽子(可持久化Trie 堆)
LOJ 洛谷 考场上都拍上了,8:50才发现我读错了题=-= 两天都读错题...醉惹... \(Solution1\) 先求一遍前缀异或和. 假设左端点是\(i\),那么我们要在\([i,n]\)中找 ...
- 「洛谷5283」「LOJ3048」「十二省联考2019」异或粽子【可持久化01trie+优先队列】
题目链接 [洛谷传送门] [LOJ传送门] 题目大意 让你求区间异或和前\(k\)大的异或和的和. 正解 这道题目是Blue sky大佬教我做的(祝贺bluesky大佬进HA省A队) 我们做过某一些题 ...
随机推荐
- log4net 按照日期备份日志
配置: <logger name="Log.All"> <level value="INFO" /> <appender- ...
- 调戏OpenShift:一个免费能干的云平台(已失效)
一.前因后果 以前为了搞微信的公众号,在新浪sae那里申请了一个服务器,一开始还挺好的 ,有免费的云豆送,但是一直运行应用也要消费云豆,搞得云豆也所剩无几了.作为一名屌丝,日常吃土,就单纯想玩一玩微信 ...
- Zabbix 通过 JMX 监控 java 进程
参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...
- 项目记录 -- zpool set
zfs set <property=value> <filesystem|volume|snapshot> root@UA4300D-spa:~/hanhuakai/pro_0 ...
- Java21个基础知识点
类装载器就是寻找类的字节码文件,并构造出类在JVM内部表示的对象组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: (1) 装载:查找和导入Class文件: (2) 链接:把类的二进制 ...
- C++之参数总结
函数的形参为函数提供了已命名的局部存储空间,它是在函数的形参表中定义的,并由调用函数时传递给函数的实参初始化,而形参的 初始化与变量的初始化一样,如果形参具有非引用类型,则复制实参的值,如果形参为引用 ...
- 基于ARM 构架(带MMU)的copy_from_user与copy_to_user详细分析
[转自:http://blog.chinaunix.net/uid-20543672-id-3195249.html] 在学习Linux内核驱动的时候,一开始就会碰到copy_from_use ...
- 数据库===轻量级mysql数据库管理工具
已经上传至: https://download.csdn.net/download/bo_mask/10276952
- centos 引导盘
# grub.conf generated by anaconda## Note that you do not have to rerun grub after making changes to ...
- tornado当用户输入的URL无效时转入设定的页面
今天做web的测验..坑爹的要用tornado...作为一个比较新的用的人还不多的东东...查资料好麻烦.. 下面是当用户输入非法 url时, 显示一个自定义 404 页面提示用户,其访问的页面不存在 ...