https://hihocoder.com/problemset/problem/1430?sid=1202564

分析:




AC代码:

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <vector>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include<list>
#include <bitset>
#include <climits>
#include <algorithm>
#define gcd(a,b) __gcd(a,b)
#define mset(a,n) memset(a,n,sizeof(a))
#define FIN freopen("input.txt","r",stdin)
#define FOUT    freopen("output.txt","w",stdout)
typedef long long LL;
const LL mod=1e9+7;
const int INF=0x3f3f3f3f;
const double PI=acos(-1.0);
using namespace std;
char str[50005];
LL sum[50005];
LL sum1[50005][105];
LL sum2[50005][105];
LL C[105][105];
void init()
{C[0][0]=1;for(int i=1;i<=100;i++)for(int j=0;j<=i;j++)C[i][j]=(j==0)?1:(C[i-1][j]+C[i-1][j-1])%mod;
}
int main()
{//FIN;init();int t;scanf ("%d",&t);while (t--){LL n,k;scanf ("%lld%lld",&n,&k);scanf ("%s",str);sum[0]=0;for (int i=1;i<=n;i++)  sum[i]=(sum[i-1]+(LL)(str[i-1]-'0'))%mod;//        sum1[i][j]表示sum[i]的j次方 for (int i=0;i<=n;i++){sum1[i][0]=1;for (int j=1;j<=k;j++){sum1[i][j]=(sum1[i][j-1]*sum[i])%mod;}}//       sum2[i][j]表示j次方下-sum1的前i项和   for (int i=0;i<=k;i++){sum2[0][i]=sum1[0][i];for (int j=1;j<=n;j++){sum2[j][i]=(sum2[j-1][i]+((i%2==0)?1:-1)*sum1[j][i])%mod;}}for (int i=1;i<=n;i++){LL ans=0;for (int j=0;j<=k;j++){ans=(ans+C[k][j]*sum1[i][j]%mod*sum2[i-1][k-j]%mod+mod)%mod;}printf("%lld%c",ans,i==n?'\n':' ');}}return 0;
}

hihoCoder 1430 A Boring Problem(数论)相关推荐

  1. Hihocoder 1430 A Boring Problem (数论)

    Problem 对于数字串 S ,S[l]S[l] 表示串 S 的第 l 个数字( l 从 1 开始标记). F(j, i)=(Σil=jS[l])F(j,\ i) = (\Sigma_{l=j}^i ...

  2. 北京区域赛I题,Uva7676,A Boring Problem,前缀和差分

    A Boring Problem 题解 其实这题不难,只要想到了前缀和差分就基本OK了. 我们要求的是第iii项的式子: F(i)=(a1+a2+...+ai)k+(a2+...+ai)k+...+( ...

  3. 2020 ACM-ICPC澳门区域赛 B Boring Problem 主元法

    B Boring Problem 题意: 给出n≤100n \le 100n≤100个长度为m≤100m \le 100m≤100的串TiT_iTi​和一个串RRR,对每个RRR的前缀,每次在其末尾以 ...

  4. codeforces798C - Mike and gcd problem (数论+思维)

    原题链接:http://codeforces.com/contest/798/problem/C 题意:有一个数列A,gcd(a1,a2,a3...,an)>1 时称这个数列是"漂亮& ...

  5. hdu 4143 A Simple Problem 数论

    y^2 = n +x^2 这道题目我做了一个小时多小时,你说累不累. 首先两个 平方数之间的差距 1^2   2^2 3^2  4^2 5 ^2 之间的 差距是  3 5 7 9  所以 只要是  奇 ...

  6. 【hihocoder1430】 A Boring Problem

    大意: 给定n个数字序列S,定义 F(j,i)=(S[j]+S[j+1]+-+S[i−1]+S[i])kF(j, i) =(S[j] + S[j+1] + - + S[i-1] + S[i]) ^ k ...

  7. 安装Anaconda3时遇到的问题

                昨天总结了装python和pycharm.本来想着马上接着总结Anaconda 的,谁知道,这一安装,竟然花了我一天一夜的时间,(悲伤辣么大啊简直).遇到了各种各样的问题,重装 ...

  8. ACM学习历程—Hihocoder [Offer收割]编程练习赛1

    比赛链接:http://hihocoder.com/contest/hihointerview3/problem/1 大概有一个月没怎么打算法了.这一场的前一场BC,也打的不是很好.本来Div1的A和 ...

  9. 电子数字 网易游戏在线笔试 第一题 hihocoder

    题目链接 http://hihocoder.com/contest/ntest2016spring1/problem/1 这个题目有几个算法考点: (1)对于一个LED数码管(由7个发光二极管封装在一 ...

最新文章

  1. MaxCompute2.0性能评测:更强大、更高效之上的更快速
  2. 【Other】Ubuntu 14.04 pptp 客户端连接配置
  3. 计算机视觉与深度学习 | 视觉SLAM详解及应用(中文版)
  4. 关于文件操作的\r\n问题。
  5. 一种向后兼容的C++结构体设计
  6. Java Map中那些巧妙的设计
  7. jparepository查询所有_jparepository 怎样自定义查询
  8. 一个 wince 开发经验的杰出blog
  9. 扁平化设计的几个规律
  10. springboot使用thymeleaf模板引擎时出现org.xml.sax.SAXParseException的原因与解决办法
  11. mysql sql优化_Mysql的SQL优化指北
  12. 【货干】Idea 安装 MyBatis 插件
  13. 一个icon的选中与不选中
  14. CSS样式写出三角形
  15. sql语句 如果为空值显示为0
  16. AWVS 网页漏洞扫描工具安装使用(Linux)
  17. python将文件夹下的图片创建到一个ppt文件
  18. Linux下实现文件实时同步(rsync命令+rsync作为服务+xinetd托管rsync)
  19. 过压保护器件压敏电阻的选型和主要应用介绍
  20. “构建之法”--第一次作业-阅读与准备工作

热门文章

  1. Nginx 正确使用姿势
  2. mysql 大二进制类型_MySql 二进制类型
  3. Arduino与Proteus仿真实例-AT24C256串行(I2C)EEPROM数据存取驱动仿真
  4. UltraISO 安装系统时,提示无法在驱动器0分区上安装windows / WINPE类软件重装系统无法正常开机 解决办法
  5. 防火墙ASA5520配置
  6. 黑莓行货手机是否都有运营商(移动,电信,联通)的logo?
  7. 串行RapidIO(Serial RapidIO,SRIO):IP核基础知识
  8. CMAIL4.0 server 脚本字段解释
  9. 11210怎么等于24_小学二年级的巧算24点.docx
  10. nodeJs——cmd中node不是内部或外部命令