CF 1329B Dreamoon Likes Sequences】的更多相关文章

传送门 题目: Dreamoon likes sequences very much. So he created a problem about the sequence that you can't find in OEIS: You are given two integers d,m find the number of arrays a, satisfying the following constraints: The length of a is n, n≥1 1≤a1<a2<⋯…
题目连接:Dreamoon Likes Sequences  题意:给你d和m,让你构造一个递增数组a,使数组b(i==1,b[i]=a[i] ; i>1, b[i]=b[i-1]^a[i])递增,求a有几种,答案模m. 题解:根据异或的性质可以得出:2后边不能有3, 4后边不能有5~7, 8后边不能有9~15...... 然后就很好写了.用数组b记录第i个数可以取得数有多少个,数组dp记录长度为 i 的 a 数组有几种.看下边的代码应该就清楚了. 1 #include<bits/stdc++…
https://codeforces.com/contest/1330/problem/D 给出d,m, 找到一个a数组,满足以下要求: a数组的长度为n,n≥1; 1≤a1<a2<⋯<an≤d: 定义一个数组b:b1=a1, ∀i>1,bi=bi−1⊕ai ,并且b1<b2<⋯<bn−1<bn: 求满足条件的a数组的个数并模m: 人话:求一个a数组满足递增,并且异或前缀和也递增 ,求出a数组个数mod m. 太菜了,不会,看了很多题解才会的,这里总结一下:…
https://codeforces.com/contest/1330/problem/D 题目大意:给出一个限制 d 与模数 m ,求出可以构造出的满足条件的数组 a 的个数,需要满足以下条件:    1.数组 a 的长度大于等于 1     2.数组 a 严格递增    3.任意的ai <=d且>=1    4.对于数组 a ,需要构造出一个数组 b :满足当 i == 1 时:b[ 1 ] = a[ 1 ], i > 1 时:b[ i ] = b[ i - 1 ] XOR a[ i…
题目链接 题目大意 让你构造一个严格单调上升的数组a满足\(1<=a_1<a_2<....a_n<=d\) 而且要使得这个数组的异或前缀和也满足严格单调上升,求有多少个满足条件的数组(mod m) 题目思路 首先这个数组的性质很容易观察就是后一个数化为二进制的最高位1要比第上一个高 然后我就不会了 我还以为是枚举数组长度啥的,果然是我太菜了 这种类型的题目需要求贡献.枚举位数为 i 的数是否在序列中出现并计算对答案的贡献,根据乘法原理相乘即答案. 当位数小于log(d)的位数,贡献…
传送门 思路:"Dreamoon will choose a number pipi from range [1,n−li+1](inclusive) and will paint all cells from pipi to pi+li−1(inclusive) in ii-th color."可以知道从[1, n - li - 1]任意位置往后染pi个格子为第ith种颜色. 容易想到,如果∑li < n,说明"-1". 如果∑li>=n,因为我们不知…
题目地址 洛谷CF1272F Solution 首先题目中有两个括号串 \(s\) 和 \(t\) ,考虑先设计两维表示 \(s\) 匹配到的位置和 \(t\) 匹配到的位置. 接着根据 括号dp的一般套路:设计一维表示当前栈中的左括号数量 (ygt大佬喜欢形象地把其称为 "前缀和"),所以状态就出来了: \[f[i,j,k] \texttt{表示 s 匹配到 i , t 匹配到 j , 栈中有 k 个左括号,的最小新序列长度}\] 转移挺简单的,新序列要么增加一个 '(' , 要么增…
https://codeforces.com/contest/1330/problem/C 给n个格子染色,有m种颜色,要求最后的所以格子被染色,并且有m种颜色. 染色要求:每种颜色有一个值li,选择 [1,n-li+1] 范围的一个数pi,把 [pi,pi+li-1] 范围内的格子染色,不能超过n,否则无法染色,重复染色的格子的颜色以最后染色的颜色为准. 求:pi,如果不能满足条件,则打印 -1 . 人话:对于每个li,从任意起点开始把li个格子染色,不能染出n个格子的范围,找到每个起始位置,…
\(这题刚好撞到我的思路了,但是因为模拟......我看了几十遍测试数据....\) $首先当\sum_^m$小于n时一定无解 大于呢?那我们就要浪费一些区间(覆盖一些点,也就是多出来的点) 但是又不能全部覆盖,最早应该可以从上一个区间的左端点+1位置开始覆盖 然后模拟,刚开始能覆盖多少就覆盖多少. 但是注意,当i+a[i]-1>n时输出-1,这时候不论怎么放都不行.(比较难考虑周全) 然后代码写的很丑,就这样吧.... #include <bits/stdc++.h> using na…
在 \(\text{Div. 2/3}\) 混了一个多月后,四个号终于都上紫了,也没用理由不打 \(\text{Div. 1}\) 了.这是我人生中的第一场 \(\text{Div .1}\) ,之前也没用刻意的刷过题.在赛场上 \(\text{A}\) 在 WA 了 \(3\) 次后终于过了,然后 \(35 \text{min}\) 的时候过了 \(\text{B}\),想了一个小时 \(\text{C}\) 未果,耻辱下线.事后上了 \(60\) 分,大概是安慰吧...... A. Drea…