Description

Input

Output

Data Constraint

Solution

  • 设前缀和 g[i][j]g[i][j] 表示 AA 为 ii 、BB%A 为 jj 的数量。

  • 这样就能 O(1)O(1) 算出 tt 的值,值改变时暴力维护即可。

  • 时间复杂度 O(T∗M∗MaxAi)O(T*M*MaxAi) 。

Code

#include<cstdio>
#include<cstring>
using namespace std;
const int N=1e5+1,M=1001;
int n,m,mx;
long long num;
long long g[M][M];
int a[N],b[N];
inline int read()
{int X=0,w=1; char ch=0;while(ch<'0' || ch>'9') {if(ch=='-') w=-1;ch=getchar();}while(ch>='0' && ch<='9') X=(X<<3)+(X<<1)+ch-'0',ch=getchar();return X*w;
}
inline void write(long long x){if(x>9) write(x/10);putchar(x%10+'0');}
inline int max(int x,int y){return x>y?x:y;}
inline long long check(long long t)
{long long sum=-num,all;for(int i=1;i<=mx;i++)if(all=g[i][i-1]) sum+=t/i*all-(all-g[i][t%i]);return sum;
}
int main()
{int T=read();while(T--){n=read(),m=read(),num=mx=0;memset(g,0,sizeof(g));for(int i=1;i<=n;i++) mx=max(mx,a[i]=read());for(int i=1;i<=n;i++) num+=(b[i]=read())/a[i],g[a[i]][b[i]%a[i]]++;for(int i=1;i<=mx;i++)for(int j=1;j<=mx;j++) g[i][j]+=g[i][j-1];while(m--){int type=read();if(type==1){int x=read(),y=read();for(int i=b[x]%a[x];i<a[x];i++) g[a[x]][i]--;num-=b[x]/a[x];mx=max(mx,a[x]=y);num+=b[x]/y;for(int i=b[x]%y;i<a[x];i++) g[y][i]++;}elseif(type==2){int x=read(),y=read();for(int i=b[x]%a[x];i<a[x];i++) g[a[x]][i]--;num-=b[x]/a[x];b[x]=y;num+=y/a[x];for(int i=y%a[x];i<a[x];i++) g[a[x]][i]++;}else{int k=read();long long l=0,r=1e12+1e9;while(l<r){long long mid=(l+r)>>1;if(check(mid)<k) l=mid+1; else r=mid;}write(l),putchar('\n');}}}return 0;
}

JZOJ 5439. 【NOIP2017提高A组集训10.31】Calculate相关推荐

  1. JZOJ 5438. 【NOIP2017提高A组集训10.31】Tree

    Description Input Output Sample Input 10 1 1 0 0 1 0 0 0 0 0 1 2 2 3 2 4 4 5 2 6 6 7 7 8 7 9 4 10 Sa ...

  2. JZOJ 5437. 【NOIP2017提高A组集训10.31】Sequence

    Description Input Output Data Constraint Solution 观察到条件是: Ak−i+1−Bi=Ak+j−1−Bj A_{k-i+1}-B_i=A_{k+j-1 ...

  3. JZOJ 5417. 【NOIP2017提高A组集训10.24】方阵

    Description 题目背景 热烈庆祝北京师范大学附属实验中学成立100周年! 问题描述 为了准备校庆庆典,学校招募了一些学生组成了一个方阵,准备在庆典上演出. 这个方阵是一个n*m的矩形,第i行 ...

  4. JZOJ 5436. 【NOIP2017提高A组集训10.30】Group

    Description Input Output Sample Input 10 113 28 3 39 90 46 14 55 35 48 47 Sample Output 62453 Data C ...

  5. JZOJ 5431. 【NOIP2017提高A组集训10.28】序列操作

    Description 一开始有n个非负整数hi,接下来会进行m次操作,第i次操作给出一个数c[i],要求你选出c[i]个大于零的数并将它们减去1. 问最多可以进行多少轮操作后无法操作(即没有c[i] ...

  6. JZOJ 5426. 【NOIP2017提高A组集训10.25】摘Galo

    Description 0v0在野外看到了一棵Galo树,看到食物的0v0瞪大了眼睛,变成了OvO. 这棵Galo树可以看做是一棵以1号点为根的n个点的有根数,除了根节点以外,每个节点i都有一个Gal ...

  7. JZOJ 5419. 【NOIP2017提高A组集训10.24】筹备计划

    Description 题目背景 热烈庆祝北京师范大学附属实验中学成立100周年! 问题描述 校庆筹备组的老师们正在寻找合适的地方来举办校庆庆典.学生们的位置和可以举办庆典的位置在x轴的正半轴取值在[ ...

  8. JZOJ 5421. 【NOIP2017提高A组集训10.25】嘟嘟噜

    Description 由于众所周知的原因, 冈部一直欠真由理一串香蕉. 为了封上真由理的嘴, 冈部承诺只要真由理回答出这个问题, 就给她买一车的香蕉: 一开始有n 个人围成一个圈, 从1 开始顺时针 ...

  9. JZOJ 5425. 【NOIP2017提高A组集训10.25】数论

    Description 聪明的0v0正在学习莫比乌斯反演. 她看到了这样的一道题:有n*m个人站成了一个n*m的方阵-- 剩下的题面,聪明的0v0不记得了.但是,她通过自己高超的数论技巧,给出了一个转 ...

最新文章

  1. Direct3D初始化代码含义
  2. 信息采集软件测试,Telegraf采集CPU数据,测试派详解
  3. js(Dom+Bom)第三天(2)
  4. 微信公众平台开发者文档
  5. Jsp+SSH+Mysql实现的校园课程作业网
  6. ❤️Spring的静态、动态代理模式
  7. 国外稳定的免费PHP空间byethost.com
  8. 软件工程小组第九次会议记录
  9. 二次规划--积极集法(active set method)
  10. 使用易语言+myqq制作QQ群管理机器人-入门教程
  11. 【历史上的今天】10 月 4 日:计算机先驱阿塔纳索夫出生;卡巴斯基创始人诞生;谷歌推出 Google Pixel 手机
  12. C语言 FlappyBird×马里奥
  13. 《形式感+——网页视觉设计创意拓展与快速表现》
  14. c语言 饱和加法,[转载]优化饱和加法运算
  15. 好看的滚动条样式,css实现好看的滚动条样式
  16. 计算机大学生三好学生申请书,大学生三好学生申请书
  17. 全自动苹果CMS火车头采集器,苹果CMS火车头发布插件
  18. 浅谈ElasticSearch
  19. Web前端面试指导 四十 CSS3有哪些新特性
  20. pareto最优解程序_求多目标优化问题Pareto最优解集的方法

热门文章

  1. 机器学习:分类器介绍
  2. 《TCP/IP Socket in C》阅读笔记
  3. CUDA学习----sp, sm, thread, block, grid, warp概念
  4. copyof java_死磕 java集合之CopyOnWriteArrayList源码分析
  5. 0x80004005错误代码解决方法_记一次win10更新升级失败的解决
  6. PIC单片机精通_A/D模数转换模块细节补充
  7. PIC单片机入门_MPLAB 集成开发环境和 MPASM编译器
  8. 原HP大中华区总裁孙振耀的退休感言
  9. 清理Win7系统的批处理
  10. 16道嵌入式C语言面试题(经典) 预处理器(Preprocessor)