Educational Codeforces Round 59 Solution】的更多相关文章

A. Digits Sequence Dividing 签. #include <bits/stdc++.h> using namespace std; #define N 1010 char s[N]; int n; void solve() { && s[] >= s[]) { puts("NO"); return; } else { puts("YES"); puts("); printf(], s + ); } }…
Educational Codeforces Round 59 (Rated for Div. 2) D. Compression 题目链接:https://codeforces.com/contest/1107/problem/D 题意: 给出一个n*(n/4)的矩阵,这个矩阵原本是一些01矩阵,但是现在四个四个储存进二进制里面,现在给出的矩阵为0~9以及A~F,表示0~15. 然后问这个矩阵能否压缩为一个(n/x)*(n/x)的矩阵,满足原矩阵中大小为x*x的子矩阵所有数都相等(所有子矩阵构…
https://codeforces.com/contest/1107/problem/E 题意 给出01字符串s(n<=100),相邻且相同的字符可以同时消去,一次性消去i个字符的分数是\(a[i]\),问消去s最多能得到多少分数 题解 实质是安排消去次序使得分数最大,第一步采取的行动是递归边界 因为只有01串,所以s被分成了一段一段,考虑段处理 预处理出一次性消去i个字符的最大分数\(f[i]\) 定义\(dp[l][r][cnt]\)为消去第l到第r段加上cnt个字符和第l段相同得到的最大…
C. Brutality time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are playing a new famous fighting game: Kortal Mombat XII. You have to perform a brutality on your opponent's character. You…
B. Digital root 题意: 题目定义了x的digital root是S(x).S(5)=5,S(38)=S(3+8=11)=S(1+1+2)=2. 有n个询问,每次询问给出ki和xi,要你求出digital root为xi的整数中,第k大的是什么. 题解: 观察可以发现,x的digital S(x) 在模9下同余.也就是x mod 9 = S(x).发现这一点以后答案就很显然了. #include <cstdio> #include <cstring> #include…
A. Dice Rolling 签到. #include <bits/stdc++.h> using namespace std; int t, n; int main() { scanf("%d", &t); while (t--) { scanf("%d", &n); ) puts("); else { ; res += n / ; printf(); } } ; } B. Letters Rearranging 签到. #…
A. Find Divisible 签到. #include <bits/stdc++.h> using namespace std; int t, l, r; int main() { scanf("%d", &t); while (t--) { scanf("%d%d", &l, &r); printf(); } ; } B. Substring Removal 签到. #include <bits/stdc++.h&g…
A. Minimum Integer 签到. #include <bits/stdc++.h> using namespace std; #define ll long long ll l, r, d; int main() { int t; scanf("%d", &t); while (t--) { scanf("%lld%lld%lld", &l, &r, &d); if (d < l) printf(&quo…
熬夜爆肝,智商急剧下降 坐标UTC+8晚上23:35开始 晚上脑袋转的慢,非常慢 T1上来先做还花了好几分钟 T2本来是有式子的我TM写数位DP写炸了然后才发现是有公式 T3英语不好,一开始题意没读懂 T4想了一种奇怪的做法,最后FST了...后来发现忘了存b数组了 一点多了,后三道题不看了直接睡觉 以后不敢熬夜了,熬夜真的爆肝…
本来准备划水,结果被垃圾题艹翻了…… T2题意: 定义一个数$x$的数字根$S(x)$为:将其各位数字相加得到一个新数,再将新数的数字和相加直到得到一个个位数,就是该数的数字根. 例如:$S(38)=S(3+8=11)=S(1+1=2)=2$ 现在需要求数字根为$x$的从小到大第$k$个数. $1\leq x\leq 9,k\leq 10^{12}$. 题解: 注意到数字和相加不会改变x对9取余的值. 那么可以得到:数字根为$x$的数就是满足模$9$的值为$x$的数. 特别地,数字根为$9$的数…