洛谷 P3797 妖梦斩木棒】的更多相关文章

P3797 妖梦斩木棒 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的\(n\)段.现在这个木棒可以看做由三种小段构成,中间的n-2段都是左右都被切断的断头,我们记做'\(X\)',最左边的一段和最右边的一段各有一个圆头,记做'('和')'.幽幽子吃饱后闲来无事,决定戏弄一下妖梦.她拿来了许多这样的三种小段木棒,来替换掉妖梦切下来的n段中的一部分,然后问妖梦一些问题.这些操作可以这样描述: \(1\)…
P3797 妖梦斩木棒 题目背景 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的n段.现在这个木棒可以看做由三种小段构成,中间的n-2段都是左右都被切断的断头,我们记做’X’,最左边的一段和最右边的一段各有一个圆头,记做’(‘和’)’.幽幽子吃饱后闲来无事,决定戏弄一下妖梦.她拿来了许多这样的三种小段木棒,来替换掉妖梦切下来的n段中的一部分,然后问妖梦一些问题.这些操作可以这样描述: 1 x C 将第…
https://www.luogu.org/problem/show?pid=3797 题目背景 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的n段.现在这个木棒可以看做由三种小段构成,中间的n-2段都是左右都被切断的断头,我们记做’X’,最左边的一段和最右边的一段各有一个圆头,记做’(‘和’)’.幽幽子吃饱后闲来无事,决定戏弄一下妖梦.她拿来了许多这样的三种小段木棒,来替换掉妖梦切下来的n段中的一部…
P3799 妖梦拼木棒 53通过 345提交 题目提供者orangebird 标签 难度普及/提高- 时空限制1s / 128MB 提交  讨论  题解 最新讨论更多讨论 暂时没有讨论 题目背景 上道题中,妖梦斩了一地的木棒,现在她想要将木棒拼起来. 题目描述 有n根木棒,现在从中选4根,想要组成一个正三角形,问有几种选法? 输入输出格式 输入格式: 第一行一个整数n 第二行n个整数,a1,a2,……an(0<ai<=5000),代表每根木棒的长度. 输出格式: 一行一个整数,对1e9+7取模…
题目背景 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的n段.现在这个木棒可以看做由三种小段构成,中间的n-2段都是左右都被切断的断头,我们记做’X’,最左边的一段和最右边的一段各有一个圆头,记做’(‘和’)’.幽幽子吃饱后闲来无事,决定戏弄一下妖梦.她拿来了许多这样的三种小段木棒,来替换掉妖梦切下来的n段中的一部分,然后问妖梦一些问题.这些操作可以这样描述: 1 x C 将第x个小段的木棒替换成C型…
解题思路 用线段树做这个就不用说了吧,但是要维护的东西确实很神奇.在每一个节点上都维护一个$lbkt$,表示这个区间上最靠左的右括号的位置:一个$rbkt$,表示这个区间上最靠右的左括号的位置.还有一个$sum$,表示这段区间(除去左右端点)上有几段完整的木棒. 注意如果一个区间内没有左右括号的话,那$lbkt=0,rbkt=0$ 然后再考虑如何建树.首先想到的是第一个节点,它代表的区间是$1-n$,他的$lbkt$是$n$,$rbkt$是$1$.然后对于包含左右端点的区间进行一下特判,类似于第…
妖梦斩木棒 思路: 略坑爹: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 200005 #define maxm maxn<<2 int n,m,L[maxm],R[maxm],mid[maxm],dis[maxm]; bool xx[maxm],ll[maxm],rr[maxm]; struct AnsType { int dis; bool l,r,x; }; inline void in(int…
题目背景 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的n段.现在这个木棒可以看做由三种小段构成,中间的n-2段都是左右都被切断的断头,我们记做’X’,最左边的一段和最右边的一段各有一个圆头,记做’(‘和’)’.幽幽子吃饱后闲来无事,决定戏弄一下妖梦.她拿来了许多这样的三种小段木棒,来替换掉妖梦切下来的n段中的一部分,然后问妖梦一些问题.这些操作可以这样描述: 1 x C 将第x个小段的木棒替换成C型…
妖梦拼木棒 思路: 神特么题: 代码: #include <bits/stdc++.h> using namespace std; #define mod 1000000007LL int n,m; ],ans; inline void in(int &now) { ; ')Cget=getchar(); ') { now=now*+Cget-'; Cget=getchar(); } } int main() { in(n);int pos; ;i<=n;i++) in(pos)…
题目背景 上道题中,妖梦斩了一地的木棒,现在她想要将木棒拼起来. 题目描述 有n根木棒,现在从中选4根,想要组成一个正三角形,问有几种选法? 输入输出格式 输入格式: 第一行一个整数n 第二行n个整数,a1,a2,……an(0<ai<=5000),代表每根木棒的长度. 输出格式: 一行一个整数,对1e9+7取模 输入输出样例 输入样例#1: 4 1 1 2 2 输出样例#1: 1 说明 对于30%的数据 N<=5000 对于100%的数据 N<=100000 Solution 很显…