hdu 5475 An easy problem(线段树)
来源:互联网 发布:js不等于怎么写 编辑:程序博客网 时间:2024/05/22 05:15
题目链接:hdu 5475 An easy problem
解题思路
单点修改。貌似直接暴力都可以过,数据很弱。
代码
#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn = 1e5 + 5;#define lson(x) ((x)<<1)#define rson(x) (((x)<<1)|1)int N, mod, P[maxn];int lc[maxn<<2], rc[maxn<<2], s[maxn<<2];void pushup(int u) { s[u] = 1LL * s[lson(u)] * s[rson(u)] % mod;}void build (int u, int l, int r) { lc[u] = l, rc[u] = r, s[u] = 1; if (l == r) return; int mid = (l + r) >> 1; build (lson(u), l, mid); build (rson(u), mid+1, r); pushup(u);}void modify(int u, int x, int v) { if (lc[u] == x && rc[u] == x) { s[u] = v % mod; return; } int mid = (lc[u] + rc[u]) >> 1; if (x <= mid) modify(lson(u), x, v); else modify(rson(u), x, v); pushup(u);}int main () { int cas, t; scanf("%d", &cas); for (int kcas = 1; kcas <= cas; kcas++) { scanf("%d%d", &N, &mod); build(1, 1, N); printf("Case #%d:\n", kcas); for (int i = 1; i <= N; i++) { scanf("%d%d", &t, &P[i]); if (t == 1) modify(1, i, P[i]); else modify(1, P[i], 1); printf("%d\n", s[1]); } } return 0;}
0 0
- hdu 5475 An easy problem(线段树)
- hdu 5475 An easy problem 线段树
- hdu 5475 An easy problem (线段树)
- HDU-5475-An easy problem【线段树】
- hdu 5475 An easy problem(线段树)
- [HDU 5475] An easy problem (线段树)
- HDU-5475:An easy problem(线段树)
- hdu-5475-An easy problem-线段树求乘积
- HDU 5475:An easy problem 这题也能用线段树做???
- hdu 5475 An easy problem(线段树单点更新)
- hdu 5475 An easy problem 线段树单点更新
- 【线段树】单点更新 hdu 5475 An easy problem
- HDU-5475 An easy problem(模拟||(倒着计算+线段树))
- HDU 5475 2015 ACM/ICPC Asia Regional Shanghai Online An easy problem(线段树)
- hdu5475 An easy problem(线段树)
- HDOJ 5475 An easy problem(线段树)
- hdu 5475 An easy problem
- HDU 5475 An easy problem
- 来自知乎的Android学习总结
- c笔记06---数组
- Android Studio如何发布APK
- openGL 深度测试与透明度设置
- 关于Session存储数据的一个小知识
- hdu 5475 An easy problem(线段树)
- 关于String内存分配的深入探讨
- c笔记07---递归,清空缓冲区,汉诺塔,随机数,重复数,exit(),return
- hashMap 和 hashTable 的区别
- 五校联考四总结
- c笔记08---变量,栈,秒表练习,关键字 static,指针变量和变量的指针
- plsql登陆数据库报 ora-12154无法解析指定的连接标识符 错误解决方法之一
- 包含Easylink的微控制器解决方案(www.mxchip.com)
- 在Json解析过程中,我为什么用object1.optInt ,和 object1.optString