P3934 [Ynoi2016] 炸脖龙 I】的更多相关文章

题面 给一个长为 \(n\) 的序列,\(m\) 次操作,每次操作: 1.区间 \([l,r]\) 加 \(x\) 2.对于区间 \([l,r]\),查询: \[a[l]^{a[l+1]^{a[l+2]^{\dots ^{a[r]}}}} \pmod p \] \(n , m \le 500000\) , 序列中每个数在 \([1,2\cdot 10^9]\) 内,\(p \le 2 \cdot 10^7\) , 每次加上的数在 \([0,2\cdot 10^9]\) 内 思路 见区间操作,想线…
题目大意:有$n$个数,每个数为$s_i$,两个操作: $1\;l\;r\;x:$表示将区间$[l,r]$内的数加上$x$ $2\;l\;r\;p:$表示求$s_l^{s_{l+1}^{^{s_{l+2}\dots}}}\bmod p$直到$s_r$ 题解:区间加可以通过树状数组维护,考虑操作二,由扩展欧拉定理可得:$$a^b\equiv\begin{cases}a^{b\bmod{\varphi(p)}} &(a,b)=1\\a^b &(a,b)\not=1,b<\varphi(p…
题目大意:给你一个序列,需要支持区间修改,以及查询一段区间$a_{i}^{a_{i+1}^{a_{i+2}...}}mod\;p$的值,每次询问的$p$的值不同 对于区间修改,由线段树完成,没什么好说的 对于查询,利用"上帝与集合的正确用法"那道题的方法,不断取$\phi(p)$降幂,那么最多迭代$log$层 由于$ai$不一定和$p$互质,需要使用拓展欧拉定理 $ans=ai^{Ans_{i+1}\;mod\;\phi(p)+Ans_{i+1}>=\phi(p)?\phi(p)…
就是让你求这个: 传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=5394 解题思路: NOIP2018后第一道题,感觉非常像那个上帝与集合的正确用法. 具体来说就是使用递归的求解方式,不过这次和上帝与集合的正确用法不同的是: 1.这次不是无限项,所以可以不在p=0时停止. 2.因为被取模数有限大,所以要特判小于φ(p)的情况. 3.询问时要预先处理φ(p) 代码: #include<cstdio> #include<cstrin…
思路:扩展欧拉定理 提交:\(\geq5\)次 错因:快速幂时刚开始没有判断\(a\)是否大于\(p\) 题解: 用树状数组维护差分,查询时暴力从左端点的第一个数向右端点递归,若递归时发现指数变为\(1\),则指数返回\(1\):若递归出右端点,指数也返回\(1\): #pragma GCC optimize (3) #include<cstdio> #include<iostream> #define ll long long #define R register ll usin…
题目 首先考虑没有修改的情况.显然直接暴力扩展欧拉定理就行了,单次复杂度为\(O(\log p)\)的. 现在有了修改,我们可以树状数组维护差分数组,然后\(O(\log n)\)地单次查询单点值. #include<bits/stdc++.h> #define LL long long using namespace std; namespace IO { char ibuf[(1<<21)+1],obuf[(1<<21)+1],st[15],*iS,*iT,*oS=…
和Ynoi2016 炸脖龙重题了. BZOJ 5394. 首先是扩展欧拉定理: 一开始傻掉了……递归的层数和区间长度无关……也就是说我们每一次直接暴力递归求解子问题一定不会超过$logP$层,因为当模数变成$1$了的时候,不管怎么乘方都不会再变化了. 然后要注意$b < \phi (P)$的情况,在快速幂的时候判断一下,如果超过了$\phi (P)$,那么就再加上一个$P$. 对于区间修改,树状数组或者线段树均可,每一层直接查询. 一共有不超过$logP$层,每一层有$logn$的开销查询元素,…
[NOI2002]贪吃的九头龙 题目背景 传说中的九头龙是一种特别贪吃的动物.虽然名字叫"九头龙",但这只是 说它出生的时候有九个头,而在成长的过程中,它有时会长出很多的新头,头的 总数会远大于九,当然也会有旧头因衰老而自己脱落. 题目描述 有一天,有 M 个脑袋的九头龙看到一棵长有 N 个果子的果树,喜出望外, 恨不得一口把它全部吃掉.可是必须照顾到每个头,因此它需要把 N 个果子分成 M 组,每组至少有一个果子,让每个头吃一组. 这M个脑袋中有一个最大,称为"大头&quo…
主要面向Web前端工程师,需要一定Javascript及three.js基础:本文主要分享内容为基于three.js开发WebVR思路及碰到的问题:有兴趣的同学,欢迎跟帖讨论. 目录:一.项目体验1.1.项目简介1.2.功能介绍1.3.游戏体验二.技术方案2.1.为什么使用WebVR2.2.常用的WebVR解决方案2.2.1.Mozilla的A-Frame方案2.2.2.three.js及webvr-polyfill方案三.技术实现3.1.知识储备3.2.实现步骤3.3.工作原理四.技术难点4.…
1. { { , DXGI_FORMAT_R32G32B32_FLOAT, , , D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA, }, { , DXGI_FORMAT_R32G32B32_FLOAT, , , D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA, }, { , DXGI_FORMAT_R32G32B32_FLOAT, , , D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DA…