摘要: 题目传送门 #include <bits/stdc++.h> using namespace std; const int N = 15; char a[N][N];//原始图案 char c[N][N];//目标图案 char t[N][N];//转换后的图案 char t2[N][N]; int 阅读全文
posted @ 2021-07-21 16:36 糖豆爸爸 阅读(95) 评论(0) 推荐(0)
摘要: 题目传送门 本题目是$P1319$的逆运算,计入的是压缩码,输出的是字符矩阵。 #include <bits/stdc++.h> using namespace std; const int N = 210; string a[N]; //注意这里的是字符串数组! int sum; int main 阅读全文
posted @ 2021-07-21 16:34 糖豆爸爸 阅读(109) 评论(0) 推荐(0)
摘要: 题目传送门 #include <bits/stdc++.h> using namespace std; int n; //汉字点阵的长和宽 int num; //输出1还是0呢?默认是0 int m; //每次输入的值是几个 int k; //已经处理完的数字个数 int main() { cin 阅读全文
posted @ 2021-07-21 16:30 糖豆爸爸 阅读(105) 评论(0) 推荐(0)
摘要: 题目传送门 #include <bits/stdc++.h> using namespace std; const int N = 110; int a[N][N]; int main() { int n, m, k; //n*n的方阵,m 个火把和 k 个萤石 cin >> n >> m >> k 阅读全文
posted @ 2021-07-21 16:13 糖豆爸爸 阅读(68) 评论(0) 推荐(0)
摘要: 题目传送门 总结 1、递推的初始条件 if (j == 0 || j == i) a[i][j] = 1; 2、递推式 a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; #include <bits/stdc++.h> using namespace std; con 阅读全文
posted @ 2021-07-21 15:06 糖豆爸爸 阅读(139) 评论(0) 推荐(0)
摘要: 题目传送门 #include <bits/stdc++.h> using namespace std; const int N = 10; int a[N][N]; //右下左上,顺序不能反,因为本题的蛇形是顺时针方向 int dx[] = {0, 1, 0, -1}; int dy[] = {1, 阅读全文
posted @ 2021-07-21 15:01 糖豆爸爸 阅读(486) 评论(0) 推荐(0)
摘要: 题目传送门 总结: 1、桶记录状态,取反 2、类型的强制转换。 #include<bits/stdc++.h> using namespace std; int const N = 2000010; bool b[N]; //灯的状态 double a; //1-1000的实数 int n; //操 阅读全文
posted @ 2021-07-21 14:56 糖豆爸爸 阅读(164) 评论(0) 推荐(0)
摘要: 题目传送门 总结: 1、桶,还是用桶,这次桶存的是三层循环遍历出来的所有可能点数和。记录每个点数和出现多少次! 2、然后一次遍历,找出最大的是哪个,最大的那个不要某个数字出现的最多次数,而是要是哪个数字,这个要注意。 #include <bits/stdc++.h> using namespace 阅读全文
posted @ 2021-07-21 14:42 糖豆爸爸 阅读(61) 评论(0) 推荐(0)
摘要: 题目传送门 一、两层暴力循环法 #include <bits/stdc++.h> using namespace std; const int N = 3010; const int INF = 0x3f3f3f3f; typedef long long LL; int a[N]; LL MIN = 阅读全文
posted @ 2021-07-21 14:21 糖豆爸爸 阅读(538) 评论(0) 推荐(0)
摘要: 题目传送门 一、思路总结 前方有坑!需要理解 \(5=1+4=2+3\),但$5$只算一次的道理。 数组+桶记录使用过。 二、完整代码 #include <bits/stdc++.h> using namespace std; // 这题30分的一般都是没有去重……1+4=5和2+3=5算同一个…… 阅读全文
posted @ 2021-07-21 14:16 糖豆爸爸 阅读(110) 评论(0) 推荐(0)
摘要: 题目传送门 总结 1、用桶计数,适合数量不多的场景,比如本题,就是记录$0 \sim 9$ 2、考查数位分离 #include <bits/stdc++.h> using namespace std; const int N = 11; int a[N]; int main() { int m, n 阅读全文
posted @ 2021-07-21 14:09 糖豆爸爸 阅读(302) 评论(0) 推荐(0)
摘要: 题目传送门 一、思路总结 奖票号码最多是$33$个,可以用一个小的数组来模拟哪个号是中奖号码,这是计数的一个常用办法,需要同学们掌握。 如何知道小明买的每组号码中了几个号呢?需要一个计数的办法,一边读取号码,一边判断中了几个号。 中$1$个号是$6$等奖,中$2$个号是$5$等奖... 中$6$个号 阅读全文
posted @ 2021-07-21 14:03 糖豆爸爸 阅读(128) 评论(0) 推荐(0)
摘要: 题目传递门 一、思路总结 常量数组是解题的关键。 先打印行,再打印列是亘古不变的真理。但这里又出来一个遍历数字,如果是数字、行、列三层循环,打印出来就是竖着的。如果是行、数字、列就是正确的啦~ 一个数字是$4$位,如果打印的是第$2$个,第$1$列,就是$2*4+1=9$,因为下标是从$0$开始,所 阅读全文
posted @ 2021-07-21 13:52 糖豆爸爸 阅读(128) 评论(0) 推荐(0)
摘要: 题目传送门 一、题意理解 画图理解,就是一个$8\times 8$的房间,里面有$4$块地毯,覆盖的范围如图所示,但它们之间有交集,问我们每个小块被覆盖了几次。 二、数组模拟 上来一看,无脑二维数组模拟啊,用$a[N][N]$来模拟这块地毯,内容值:被盖上的次数。打一遍,提交! #include < 阅读全文
posted @ 2021-07-21 11:21 糖豆爸爸 阅读(249) 评论(0) 推荐(0)
摘要: 题目传送门$Luogu$ 题目传送门$AcWing$ 一、公式推导 我们对于国王身后的两个点来分析 队列可能是这样的: \(*\) 左手 右手 国王 \(a_0\) \(b_0\) \(p1\) \(a_1\) \(b_1\) \(p2\) \(a_2\) \(b_2\) 根据题意:每位大臣获得的金 阅读全文
posted @ 2021-07-21 10:34 糖豆爸爸 阅读(494) 评论(0) 推荐(0)
摘要: 题目传递门 一、关键语句解析: 如果有小组内人数太少,就会因为时间不够而无法获得高分,于是小可可想让你给出一个合法的分组方案,满足所有人都恰好分到一个小组,使得人数最少的组人数最多,输出人数最少的组人数的最大值。 这TM是人话吗?是我语文不好??强行理解一下: (1)每个同学都要进入到一个组中去,不 阅读全文
posted @ 2021-07-21 09:29 糖豆爸爸 阅读(192) 评论(0) 推荐(0)
摘要: 题目传递门 #include <bits/stdc++.h> using namespace std; typedef long long LL; const int N = 310; int a[N]; int n; LL res; int h, t, cnt; int main() { cin 阅读全文
posted @ 2021-07-21 08:50 糖豆爸爸 阅读(62) 评论(0) 推荐(0)
摘要: 题目传递门 #include <bits/stdc++.h> using namespace std; int w, n; const int N = 30010; int a[N]; //双指针 int h = 1, t = n, cnt; int main() { cin >> w >> n; 阅读全文
posted @ 2021-07-21 08:19 糖豆爸爸 阅读(58) 评论(0) 推荐(0)
摘要: 题目传送门 总结: 1、结构体+排序 2、贪心 3、逐个加入,够数退出 4、小心没良心的数据,比如 0 0 #include <bits/stdc++.h> using namespace std; typedef long long LL; int n, m; const int N = 5010 阅读全文
posted @ 2021-07-21 08:13 糖豆爸爸 阅读(86) 评论(0) 推荐(0)
摘要: 题目传送门 一、贪心法 题目里给的样例是$4,3,2,5,3,5$,可以选择一个区间进行“填坑”操作;我们的贪心策略是: 若$a[i]>a[i-1]$,计数器$sum+=a[i]-a[i-1]$; 贪心证明 假设现在有一个坑,但旁边又有一个坑。你肯定会选择把两个同时填充,都减$1$;那么小的坑肯定会 阅读全文
posted @ 2021-07-21 07:42 糖豆爸爸 阅读(94) 评论(0) 推荐(0)
Live2D