牛客练习赛48 C 小w的糖果 (数学,多项式)

链接:https://ac.nowcoder.com/acm/contest/923/C来源:牛客网

题目描述

小w和他的两位队友teito、tokitsukaze准备为大家发点福利,到底发点什么呢?思考良久之后他们三个人准备了很多很多的糖果。他们让n个小朋友们排成一长排并且从左到右依次标号为1,2,3,4,5,6,7,8,9.....n。

三人每次发糖果,都是从某一个位置开始,只把糖果发给这个人以及这个人右侧的所有人。但是他们发糖果的规则有所不同。

1、如果某轮发糖果的是tokitsukaze,她将会从一个位置pos开始,依次向右给每个人1个糖果。

2、如果某轮发糖果的是teito,他将会从一个位置pos开始,依次向右,他将会给他碰到的第一个人发1个糖果,给他碰到的第二个人发2个糖果,给他碰到的第三个人发3个糖果...碰到的第k个人发k个糖果,直到向右走到编号为n的人为止。

3、如果某轮发糖果的是winterzz1,众所周知小w是个大方的人,所以他发的糖最多,他将会从一个位置pos开始,依次向右,它将会给他碰到的第一个人发1个糖果,给他碰到的第二个人发4个糖果,给他碰到的第三个人发9个糖果...碰到的第k个人发k2k^{2}k2个糖果直到向右走到编号为n的人为止。

发糖的福利一共进行了m轮,现在告诉你这m轮发糖的人和他们该轮发糖的起始位置pos,请你告诉我这m轮发糖结束后1到n每个人手中糖果的数量,为了避免这个数字过大,你只用输出每一个人手中糖的数量mod  109+7mod;10^{9}+7mod109+7后的结果即可。

输入描述:

第一行是一个正整数T(1⩽T⩽10)(1\leqslant T\leqslant10 )(1⩽T⩽10),表示有T组测试案例。对于每组案例:第一行是两个正整数n,m(1⩽n,m⩽105)(1\leqslant n,m\leqslant10^{5} )(1⩽n,m⩽105)表示现在有一排n个人并且进行了m轮发糖果。接下来m行,每行两个正整数type(1⩽type⩽3)(1\leqslant type\leqslant 3)(1⩽type⩽3),pos(1⩽pos⩽n)(1\leqslant pos\leqslant n )(1⩽pos⩽n)分别表示该轮发糖果的人,以及这个人开始发糖果的位置。type=1时发糖果的人为tokitsukaze,type=2时发糖果的人为teito,type=3时发糖果的人为winterzz1。pos表示位置,并且最左边的人pos为1,最右边的人pos为n。

输出描述:

对于每组测试案例,输出一行n个非负整数,表示每个人手中的糖果数量mod  109+7mod\; 10^{9}+7mod109+7后的结果。数字与数字之间用空格隔开并且行末不允许有多余空格。

示例1

输入

[复制](javascript:void(0)

牛客练习赛48 C 小w的糖果 (数学,多项式,差分)的更多相关文章

  1. 牛客练习赛48 A· 小w的a+b问题 (贪心,构造,二进制)

    牛客练习赛48 A· 小w的a+b问题 链接:https://ac.nowcoder.com/acm/contest/923/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C ...

  2. 牛客练习赛48 D 小w的基站网络

    链接:https://ac.nowcoder.com/acm/contest/923/D来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言52428 ...

  3. 牛客练习赛48 E 小w的矩阵前k大元素

    E 思路: 优先队列,将迭代器变量作为结构体的变量. 迭代器走的时候只能像一个方向走,另外一个方向只有最开始才走.如下图所示: 如果两个方向同时走,同一个值会被遍历多次,像上图那样就能保证每个位置都走 ...

  4. 牛客练习赛48 C,D,E

    C 小w的糖果 题意:3种操作,第一种是使pos右边的数全部+1,第二种是pos右边的数依次+k(k从1开始递增),第三种是pos右边的数依次+k^2(k从1开始递增). 解法:第一种我们很容易想到差 ...

  5. 牛客练习赛44 C 小y的质数 (数论,容斥定理)

    链接:https://ac.nowcoder.com/acm/contest/634/C 来源:牛客网 题目描述 给出一个区间[L,R],求出[L,R]中孪生质数有多少对. 由于这是一个区间筛质数的模 ...

  6. 牛客练习赛44 B 小y的线段 (思维)

    链接:https://ac.nowcoder.com/acm/contest/634/B 来源:牛客网 题目描述 给出n条线段,第i条线段的长度为a_ia i ​ ,每次可以从第i条线段的j位置跳到第 ...

  7. 牛客练习赛44 A 小y的序列 (模拟,细节)

    链接:https://ac.nowcoder.com/acm/contest/634/A 来源:牛客网 小y的序列 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语 ...

  8. 牛客练习赛40 A 小D的剧场 (思维dp)

    链接:https://ac.nowcoder.com/acm/contest/369/A 题目描述 若你摘得小的星星 你将得到小的幸福  若你摘得大的星星 你将得到大的财富  若两者都能摘得 你将得到 ...

  9. 牛客练习赛40 C 小A与欧拉路(树的直径)

    链接:https://ac.nowcoder.com/acm/contest/369/C 题目描述 小A给你了一棵树,对于这棵树上的每一条边,你都可以将它复制任意(可以为0)次(即在这条边连接的两个点 ...

随机推荐

  1. Intellij IDEA Debug 多模块下断点目标源问题

    Ctrl+Alt+S进入Settings,选择Debugger->show alternative source switcher 勾选,开启显示替代源选择器 由于项目工程存放了多个应用模块,包 ...

  2. R画柱形图和箱线图

    数据格式如下 gene_id Sham-1 Sham-2 Sham-3 Sham-4 Sham-5 Rep-1h-1 Rep-1h-2 Rep-1h-3 Rep-1h-4 Rep-1h-5 Rep-3 ...

  3. LeetCode 50. Pow(x, n) 12

    50. Pow(x, n) 题目描述 实现 pow(x, n),即计算 x 的 n 次幂函数. 每日一算法2019/5/15Day 12LeetCode50. Pow(x, n) 示例 1: 输入: ...

  4. [.NET Core] - 使用 EF Core 的 Scaffold-DbContext 脚手架命令创建 DbContext

    Scaffold-DbContext 命令 参数 Scaffold-DbContext [-Connection] <String> [-Provider] <String> ...

  5. NGINX---一次阿里云宝塔开发flask经历

    1.放行端口问题 不但需要在阿里云官网服务器控制台放行端口,还需要在宝塔里面放行端口 2.nginx 宝塔默认的用户是www 句法: user user [group]; 默认: 用户无人; 语境: ...

  6. Prometheus入门到放弃(1)之Prometheus安装部署

    规划: IP 角色 版本 10.10.0.13 prometheus-server 2.10 10.10.0.11 node_exporter 0.18.1 10.10.0.12 node_expor ...

  7. 洛谷P4145——上帝造题的七分钟2 / 花神游历各国

    题目背景 XLk觉得<上帝造题的七分钟>不太过瘾,于是有了第二部. 题目描述 "第一分钟,X说,要有数列,于是便给定了一个正整数数列. 第二分钟,L说,要能修改,于是便有了对一段 ...

  8. C++知识点总结篇

    const在不同位置时的不同意义 指针类型前:声明一个指向常量的指针,程序中不能通过指针来改变它所指向的值,但指针本身的值可以改变,即指针可以指向其他数据: "*"号和指针名之间, ...

  9. python学习-57 logging模块

    logging 1.basicConfig方式 import logging # 以下是日志的级别 logging.debug('debug message') logging.info('info ...

  10. Python random模块(以后用到一个再更新一个)

    random模块是产生随机数的模块 1.random.random() 这是产生0~1之间一个随机浮点数,但是不会包括1 import random num = 0 while num < 10 ...