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+1N​Ai​×Aj​×Ak​) mod (109+7)

的值。

输入输出格式

输入格式:

第1 行,1 个整数NN。

第2 行,NN个整数A_1,A_2,A_3,\cdots,A_NA1​,A2​,A3​,⋯,AN​.

输出格式:

1 个整数,表示所求的值。

输入输出样例

输入样例#1: 复制

3
1 2 3
输出样例#1: 复制

36

说明

• 对于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 异或之积的更多相关文章

  1. 洛谷 P3909 异或之积 题解

    原题链接 本人看了其它解法,发现本人的解法还是 首创 ! 而且我的解法好像和 \(\times 6\) 没什么关系 -- (如果没 \(\times 6\),我没还不用算逆元) 别人的思路呢,大都是从 ...

  2. P3909 异或之积

    P3909 异或之积 为什么叫做异或之积? 答曰:只要不关乎Alice和Bob就行 做完这道水题,感觉自己弱爆了. 一开始就要考虑暴力\(O(n^3)\)的优化. 然后就注意到了题目中的\(6\)为什 ...

  3. 洛谷 P3908 异或之和

    洛谷 P3908 异或之和 题目描述 求1⨁2⨁⋯⨁N 的值. A⨁B 即 AA, B 按位异或. 输入输出格式 输入格式: 1 个整数 N . 输出格式: 1 个整数,表示所求的值. 输入输出样例 ...

  4. 【洛谷P3909】异或之积

    题目大意:给定一个 N 个数字组成的序列,求 \[ \left(6 \times \sum_{i=1}^{N} \sum_{j=i+1}^{N} \sum_{k=j+1}^{N} A_{i} \tim ...

  5. 洛谷P3760异或和

    传送门啦 传送门啦 一般这种位运算的题都要把每一位拆开来看,因为位运算每个位的结果这和这一位的数有关. 这样我们用s[i]表示a的前缀和,即 $ a[1]+a[2]+....a[i] $ ,然后我们从 ...

  6. 洛谷——P3908 异或之和

    P3908 异或之和 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值. A \bigoplus BA⨁B 即AA , BB 按位异或. ...

  7. 洛谷—— P3908 异或之和

    https://www.luogu.org/problemnew/show/P3908 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值 ...

  8. 洛谷.5283.[十二省联考2019]异或粽子(可持久化Trie 堆)

    LOJ 洛谷 考场上都拍上了,8:50才发现我读错了题=-= 两天都读错题...醉惹... \(Solution1\) 先求一遍前缀异或和. 假设左端点是\(i\),那么我们要在\([i,n]\)中找 ...

  9. 「洛谷5283」「LOJ3048」「十二省联考2019」异或粽子【可持久化01trie+优先队列】

    题目链接 [洛谷传送门] [LOJ传送门] 题目大意 让你求区间异或和前\(k\)大的异或和的和. 正解 这道题目是Blue sky大佬教我做的(祝贺bluesky大佬进HA省A队) 我们做过某一些题 ...

随机推荐

  1. log4net 按照日期备份日志

    配置: <logger name="Log.All">   <level value="INFO" />   <appender- ...

  2. 调戏OpenShift:一个免费能干的云平台(已失效)

    一.前因后果 以前为了搞微信的公众号,在新浪sae那里申请了一个服务器,一开始还挺好的 ,有免费的云豆送,但是一直运行应用也要消费云豆,搞得云豆也所剩无几了.作为一名屌丝,日常吃土,就单纯想玩一玩微信 ...

  3. Zabbix 通过 JMX 监控 java 进程

    参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] [ Monit ...

  4. 项目记录 -- zpool set

    zfs set <property=value> <filesystem|volume|snapshot> root@UA4300D-spa:~/hanhuakai/pro_0 ...

  5. Java21个基础知识点

    类装载器就是寻找类的字节码文件,并构造出类在JVM内部表示的对象组件.在Java中,类装载器把一个类装入JVM中,要经过以下步骤: (1) 装载:查找和导入Class文件: (2) 链接:把类的二进制 ...

  6. C++之参数总结

    函数的形参为函数提供了已命名的局部存储空间,它是在函数的形参表中定义的,并由调用函数时传递给函数的实参初始化,而形参的 初始化与变量的初始化一样,如果形参具有非引用类型,则复制实参的值,如果形参为引用 ...

  7. 基于ARM 构架(带MMU)的copy_from_user与copy_to_user详细分析

      [转自:http://blog.chinaunix.net/uid-20543672-id-3195249.html]   在学习Linux内核驱动的时候,一开始就会碰到copy_from_use ...

  8. 数据库===轻量级mysql数据库管理工具

    已经上传至: https://download.csdn.net/download/bo_mask/10276952

  9. centos 引导盘

    # grub.conf generated by anaconda## Note that you do not have to rerun grub after making changes to ...

  10. tornado当用户输入的URL无效时转入设定的页面

    今天做web的测验..坑爹的要用tornado...作为一个比较新的用的人还不多的东东...查资料好麻烦.. 下面是当用户输入非法 url时, 显示一个自定义 404 页面提示用户,其访问的页面不存在 ...