10 2022 档案

AcWing 271杨老师的照相排列
摘要:思路 $1=<k<= 5$,所以最多会有五个位置,五个位置分配人,即集合为f[a][b][c][d][e]表示五个位置各放了a, b, c, d, e个人的方法的数量,同时h[1]>=h[2]>=h[3]>=h[4]>=h[5],所以后面的层也可以取到和上面一层一样的人数,但是不能超过,因此b<= 阅读全文

posted @ 2022-10-26 00:02 chelly酱 阅读(28) 评论(0) 推荐(0)

AcWing168 生日蛋糕(剪枝)
摘要:原题链接 思路的话,就是暴搜加剪枝,中间有个放缩 思路看这篇 #include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).end() 阅读全文

posted @ 2022-10-25 22:04 chelly酱 阅读(45) 评论(0) 推荐(0)

AcWing107 超快速排序(树状数组找逆序对)
摘要:原题链接 思路 求到底要和相邻元素交换几次,其实就是求逆序对的数量,有几对逆序对就要交换几次,因为只能相邻的之间交换(超快速排序?冒泡排序!) 利用树状数组求逆序对 大概想法是如下: 因为我们需要逆序对的数量,因此第一步就是将树状数组清空,表示当前一个数都没,然后在树状数组的第a[i]的位置上插入一 阅读全文

posted @ 2022-10-25 20:26 chelly酱 阅读(54) 评论(0) 推荐(0)

AcWing1016 最大上升子序列和
摘要:原题链接 其实就是在原本的Lis的基础上,将求的数量变成了求最大的和 #include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).en 阅读全文

posted @ 2022-10-23 19:40 chelly酱 阅读(28) 评论(0) 推荐(0)

AcWing1012 友好城市
摘要:原题链接 /** * @Author: chelly * @Date: 2022-10-23 19:29:52 * * 对南北海岸随便一个进行从小到大的排序,然后对另一边做lis, * 如果另一边大小顺序不匹配就会出现交叉,就非法 */ #include <bits/stdc++.h> #defin 阅读全文

posted @ 2022-10-23 19:35 chelly酱 阅读(28) 评论(0) 推荐(0)

AcWing80 骰子的点数(线性dp)
摘要:#define pb push_back class Solution { public: vector<int> numberOfDice(int n) { int f[15][100]; // 投i次,总和为j的投掷可能 memset(f, 0, sizeof(f)); for (int i = 阅读全文

posted @ 2022-10-21 22:14 chelly酱 阅读(24) 评论(0) 推荐(0)

leecode1224 最大出现频率(哈希表的应用)
摘要:原题链接 题意 给你一个正整数数组 nums,请你帮忙从该数组中找出能满足下面要求的 最长 前缀,并返回该前缀的长度: 从前缀中 恰好删除一个 元素后,剩下每个数字的出现次数都相同。 如果删除这个元素后没有剩余元素存在,仍可认为每个数字都具有相同的出现次数(也就是 0 次)。 样例1 输入:nums 阅读全文

posted @ 2022-10-18 15:25 chelly酱 阅读(46) 评论(0) 推荐(0)

C++ 将字符串整个转换成大小写的方式
摘要:// 将所有字母转小写: transform(T.begin(), T.end(), T.begin(), ::tolower); transform(all(s), s.begin(), ::tolower); transform(all(str), str.begin(), ::tolower) 阅读全文

posted @ 2022-10-17 17:23 chelly酱 阅读(989) 评论(0) 推荐(0)

AcWing430 纪念品分组 -- 双指针
摘要:#include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).end() #define SZ(x) (int) (x).size() 阅读全文

posted @ 2022-10-17 15:56 chelly酱 阅读(25) 评论(0) 推荐(0)

AcWing1251 打击罪犯--并查集
摘要:#include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).end() #define SZ(x) (int) (x).size() 阅读全文

posted @ 2022-10-16 17:31 chelly酱 阅读(41) 评论(0) 推荐(0)

c++ bitset用法
摘要:一、 声明: bitset<N> f; // N是二进制长度,这时每一位都是0 存储数字的二进制: bitset name(num); // 定义长度为 N 的二进制数组,命名为 name,将数字 num 的二进制存到其中; bitset<8> f(12) // 二进制长度为8, 将12转换为二进制 阅读全文

posted @ 2022-10-08 17:11 chelly酱 阅读(309) 评论(0) 推荐(0)

AcWing1362 健康的荷斯坦奶牛(二进制枚举)
摘要:原题链接 思路 : 二进制枚举 因为数据量很小,数据只有25和15,因此二进制枚举妥妥的 需要注意的是题目中要求下标从1开始,后面记录的时候如果开始是从0开始的记得+1 小tips c++中将一个vector里的东西复制给另一个vector,可以像下面一样(都是将v1赋值给v2) vector<in 阅读全文

posted @ 2022-10-05 17:22 chelly酱 阅读(61) 评论(0) 推荐(0)

AcWing591 国家领导人 getline()函数的使用
摘要:原题链接 其实就是判重加计数,值得注意的是当输入的字符串中有空格的时候,例如人名的时候,可以用getline()方法。 getchar()在标准输入输出流中,使用的时候同步不能关, getline()方法是和cin绑定的, 大概格式为: string s; getline(cin, s); #inc 阅读全文

posted @ 2022-10-05 16:08 chelly酱 阅读(42) 评论(0) 推荐(0)

AcWing 558. 乘积三元组
摘要:题目链接 题目 #include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).end() #define SZ(x) (int) (x) 阅读全文

posted @ 2022-10-04 20:17 chelly酱 阅读(34) 评论(0) 推荐(0)

导航