Multiplication

Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others)

Problem Description

If C=A⋄B, then

C[k]=∑max(i,j)=kA[i]⋅B[j]mod(109+7)

.

Work out sequence C=A⋄Bfor given sequence A and B.

Input

The first line contains a integer n, which denotes the length of sequence A,B.

The second line contains nn integers a1,a2,…,ana1,a2,…,an , which denote sequence A.

The thrid line contains nn integers b1,b2,…,bnb1,b2,…,bn , which denote sequenceB.

(1≤n≤105,0≤ai,bi≤109)

Output

nn integers, which denotes sequence C.

Sample Input

  1. 2
  2. 1 2
  3. 3 4

Sample Output

  1. 3 18

Source

ftiasch

Manager

 
题意:  长度为n的a,b序列   求C[k]=∑max(i,j)A[i]⋅B[j]mod(109+7)
 
题解:  max(i,j) 可以看出 相乘的两个数中一定有a[n]或者b[n]
          前缀和处理
 
  1. #include<iostream>
  2. #include<cstring>
  3. #include<cstdio>
  4. #include<queue>
  5. #include<stack>
  6. #define ll long long
  7. #define pi acos(-1.0)
  8. #define mod 1000000007
  9. using namespace std;
  10. int n;
  11. ll a[];
  12. ll b[];
  13. ll suma[];
  14. ll sumb[];
  15. ll ans;
  16. ll gg[];
  17. int main()
  18. {
  19. while(scanf("%d",&n)!=EOF)
  20. {
  21. suma[]=;
  22. sumb[]=;
  23. a[]=;
  24. b[]=;
  25. for(int i=;i<=n;i++)
  26. {
  27. scanf("%d",&a[i]);
  28. suma[i]=(suma[i-]+a[i])%mod;
  29. }
  30. for(int i=;i<=n;i++)
  31. {
  32. scanf("%d",&b[i]);
  33. sumb[i]=(sumb[i-]+b[i])%mod;
  34. }
  35. ans=;
  36. for(int i=;i<=n;i++)
  37. {
  38. ans=((a[i]*b[i]%mod+a[i]*sumb[i-]%mod+b[i]*suma[i-]%mod))%mod;
  39. gg[i]=ans;
  40. }
  41. printf("%lld",gg[]);
  42. for(int i=;i<=n;i++)
  43. printf(" %lld",gg[i]);
  44. cout<<endl;
  45. }
  46. return ;
  47. }
 
 

ACdream 1029 前缀和的更多相关文章

  1. Leetcode 1029. 可被 5 整除的二进制前缀

    1029. 可被 5 整除的二进制前缀  显示英文描述 我的提交返回竞赛   用户通过次数467 用户尝试次数662 通过次数477 提交次数1964 题目难度Easy 给定由若干 0 和 1 组成的 ...

  2. HDU 5452——Minimum Cut——————【树链剖分+差分前缀和】ACdream 1429——Diversion——————【树链剖分】

    Minimum Cut Time Limit: 3000/2000 MS (Java/Others)    Memory Limit: 65535/102400 K (Java/Others)Tota ...

  3. [ACDream 1430]SETI 后缀数组

    题目链接:http://acdream.info/problem?pid=1430 题目大意:给你一个长度不超过10000的字符串,问你出现过两次或两次以上的不重叠的子串有多少个. 后缀数组计算出he ...

  4. [ACdream] 女神教你字符串——三个气球

    Problem Description 女神邀请众ACdream开联欢会,显然作为ACM的佼佼者,气球是不能少的~.女神准备了三种颜色的气球,红色,黄色,绿色(交通信号灯?) 有气球还不能满足女神,女 ...

  5. ACdreamoj 1011(树状数组维护字符串hash前缀和)

    题目链接:http://acdream.info/problem? pid=1019 题意:两种操作,第一种将字符串某个位置的字符换为还有一个字符.另外一种查询某个连续子序列是否是回文串: 解法:有两 ...

  6. ACdream1726-A Math game+(DFS+二分)+(DFS+前缀和)

    传送门 官方题解:http://acdream.info/topic?tid=4246 参考:https://www.cnblogs.com/nowandforever/p/4492428.html ...

  7. HDU1671——前缀树的一点感触

    题目http://acm.hdu.edu.cn/showproblem.php?pid=1671 题目本身不难,一棵前缀树OK,但是前两次提交都没有成功. 第一次Memory Limit Exceed ...

  8. 【手记】注意BinaryWriter写string的小坑——会在string前加上长度前缀length-prefixed

    之前以为BinaryWriter写string会严格按构造时指定的编码(不指定则是无BOM的UTF8)写入string的二进制,如下面的代码: //将字符串"a"写入流,再拿到流的 ...

  9. ASP.NET Core MVC 配置全局路由前缀

    前言 大家好,今天给大家介绍一个 ASP.NET Core MVC 的一个新特性,给全局路由添加统一前缀.严格说其实不算是新特性,不过是Core MVC特有的. 应用背景 不知道大家在做 Web Ap ...

随机推荐

  1. Centos下使用Docker部署MySql

    本文讲述 CentOS 系统 Docker 中安装 MySql 的过程 步骤 1. 拉取 Docker Hub 官方提供的mysql镜像 docker pull mysql:5.7 2.运行容器 do ...

  2. sql server几种Join的区别测试方法与union表的合并

    /* sql server几种Join的区别测试方法 主要来介绍下Inner Join , Full Out Join , Cross Join , Left Join , Right Join的区别 ...

  3. React路由-进阶篇

    路由进阶 1.多级路由,和之前的思想一样,在子路由里面继续写Route,继续挂载组件,就可以实现多级路由 比如这样:class Food extends Component{ render() { r ...

  4. sql xml扩展字段 查询语句

    [cms:sql query="SELECT ContentXML.value('/fields[1]/Address[1]','varchar(max)')AS valueForm FRO ...

  5. 使用命令行设置MySql编码格式

    使用命令行设置MySql编码格式 1.登录mysql 2.输入 SHOW VARIABLES LIKE 'character_set_%'; 3.查看 value值是否为utf8,如果不是,则使用SE ...

  6. C语言进阶—— 接续符和转义符13

    接续符的意义: C语言中的接续符 (\) 是指示编译器行为的利器 我们来看一个案例: #in\ clud\ e <st\ dio.h> in\ t m\ ain(\ ) { pri\ nt ...

  7. Pandas 数据结构Series:基本概念及创建

    Series:"一维数组" 1. 和一维数组的区别 # Series 数据结构 # Series 是带有标签的一维数组,可以保存任何数据类型(整数,字符串,浮点数,Python对象 ...

  8. protobuf-2.5.0的下载与安装

    1.下载 Hadoop使用protocol buffer进行通信,需要下载和安装protobuf-2.5.0.tar.gz.由于现在protobuf-2.5.0.tar.gz已经无法在官网https: ...

  9. Pascal小游戏 俄罗斯方块怀旧版

    俄罗斯方块怀旧版(注释版) {$APPTYPE GUI}{$MODE DELPHI}program WinPiece; usesWindows; constAppName = 'WinPiece';p ...

  10. 《数据结构》C++代码 线性表

    线性表,分数组和链表两种(官方名称记得是叫顺序存储和链式存储).代码里天天用,简单写写. 首先是数组,分静态.动态两种,没什么可说的,注意动态的要手动释放内存就好了. 其次是链表,依旧分静态.动态.课 ...