「SHOI2015」脑洞治疗仪】的更多相关文章

#2037. 「SHOI2015」脑洞治疗仪   题目描述 曾经发明了自动刷题机的发明家 SHTSC 又公开了他的新发明:脑洞治疗仪——一种可以治疗他因为发明而日益增大的脑洞的神秘装置. 为了简单起见,我们将大脑视作一个 01 序列.111 代表这个位置的脑组织正常工作,000 代表这是一块脑洞. 1 0 1 0 0 0 1 1 1 0 脑洞治疗仪修补某一块脑洞的基本工作原理就是将另一块连续区域挖出,将其中正常工作的脑组织填补在这块脑洞中.(所以脑洞治疗仪是脑洞的治疗仪?) 例如,用上面第 88…
题解 维护区间内1的个数,左边数0的长度,右边数0的长度,区间内0区间最长个数,覆盖标记 第一种操作区间覆盖0 第二种操作查询\([l_0,r_0]\)中1的个数,区间覆盖0,然后覆盖时找到相对应的区间时对于如果1够把这个区间覆盖掉的话就直接cover,否则就递归该区间,如果能覆盖左区间就覆盖去右区间否则就覆盖左区间 第三种操作直接查询左右区间特判跨越中间 代码 #include <bits/stdc++.h> #define enter putchar('\n') #define space…
线段树区间合并问题 恶心... 屠龙宝刀点击就送 #include <cstdio> #define N 200005 struct Segment { int l,r,mid,sum,lm,rm,m,len,flag; Segment * ch[]; Segment () { ch[]=ch[]=NULL; lm=rm=m=; flag=-; } }*root=new Segment; int n,m,tmp,ans,nowl; inline int max(int a,int b) {re…
题目链接 loj#2038. 「SHOI2015」超能粒子炮・改 题解 卢卡斯定理 之后对于%p分类 剩下的是个子问题递归 n,k小于p的S可以预处理,C可以卢卡斯算 代码 #include<cstdio> #include<algorithm> inline long long read() { long long x = 0,f = 1; char c = getchar(); while(c < '0' || c > '9') c = getchar(); whi…
#2036. 「SHOI2015」自动刷题机 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 题目描述 曾经发明了信号增幅仪的发明家 SHTSC 又公开了他的新发明:自动刷题机——一种可以自动 AC 题目的神秘装置. 自动刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写程序.每秒,自动刷题机的代码生成模块会有两种可能的结果: 写了 xxx 行代码: 心情不好,删掉了之前写的 yyy 行代码.(如果 yyy 大于当前代码长度则相当于…
[LOJ 2039] 「SHOI2015」激光发生器 链接 链接 题解 分为两个部分 第一个是求直线之间的交点找到第一个触碰到的镜面 第二个是求直线经过镜面反射之后的出射光线 第一个很好做,第二个就是将入射光线旋转,注意旋转后在哪一面(可能到镜面背后去) 代码 // Copyright lzt #include<stdio.h> #include<cstring> #include<cstdlib> #include<algorithm> #include&…
「SHOI2015」超能粒子炮・改 给你\(T\)组询问,每组询问给定参数\(n,k\),计算\(\sum\limits_{i=0}^k\dbinom{n}{i}\). \(T\leq10^5,n,k\leq10^{18}\). 这题其实是\(\operatorname{Lucas}\)定理的一个简单扩展. 首先利用\(\operatorname{Lucas}\)定理化简所求和式,由\(\dbinom{n}{m}=\dbinom{n/p}{m/p}\times\dbinom{n\%p}{m\%p…
题目描述: 曾经发明了自动刷题机的发明家 SHTSC 又公开了他的新发明:脑洞治疗仪——一种可以治疗他因为发明而日益增大的脑洞的神秘装置. 为了简单起见,我们将大脑视作一个 01 序列.11代表这个位置的脑组织正常工作,00代表这是一块脑洞. 脑洞治疗仪修补某一块脑洞的基本工作原理就是将另一块连续区域挖出,将其中正常工作的脑组织填补在这块脑洞中.(所以脑洞治疗仪是脑洞的治疗仪?) 例如,用上面第88号位置到第1010号位置去修补第11号位置到第44号位置的脑洞,我们就会得到: 如果再用第11号位…
传送门:Here 一句话题意:给定$ t$次询问,每次读入$n,k,$求$ \sum_{i=0}^kC_n^k\ mod\ 2333$, 其中$ t \leq 100000$,$n,k \leq 10^{18},$ 前置知识:普通卢卡斯定理 $ C_n^k= C_{n \% p}^{k \% p}*C_{n/p}^{k/p} \% p$ 我们定义$ S(n,k)=\sum_{i=0}^kC_n^k \% p$ 考虑每次询问将式子展开: $ S(n,k)= \sum\limits_{i=0}^kC…
/* 有理有据的二分答案 因为在过程中最多减到零 所以n越小显然就能刷更多的题 无解时就是无论如何也无法得到k , 这个特判一下即可 */ #include<cstdio> #include<algorithm> #include<cstring> #include<iostream> #define M 100010 #define ll long long #define inf 100000000000ll using namespace std; l…