08 2022 档案
P3955 [NOIP2017 普及组] 图书管理员
摘要:P3955 [NOIP2017 普及组] 图书管理员 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace 阅读全文
posted @ 2022-08-28 16:35 ljq0120 阅读(155) 评论(0) 推荐(0) 编辑
P1746 离开中山路
摘要:P1746 离开中山路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 又是一道广搜题 没什么【坑】 #include<iostream> #include<queue> using namespace std; struct Pos { int x,y; }; queue <Po 阅读全文
posted @ 2022-08-26 18:49 ljq0120 阅读(46) 评论(0) 推荐(0) 编辑
P1376 [USACO05MAR]Yogurt factory 机器工厂
摘要:P1376 [USACO05MAR]Yogurt factory 机器工厂 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 贪心这个题很好想枚举到了第i月,如果前面有某一个月制造出机器的成本 + 到达第i天保养得花费是小于在第i个月直接造出来花费的成本的那就可以替换掉所以这就很显然 阅读全文
posted @ 2022-08-25 08:53 ljq0120 阅读(60) 评论(0) 推荐(0) 编辑
P1589 泥泞路
摘要:P1589 泥泞路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路 step 1:将泥泞小路针对起点排序。使用一个 结构体+自带sort 就可以实现。 step 2:得到起点有序的小路之外,就需要考虑怎么铺路了。该怎么铺呢?主要就是两种情况: 情况1:每次恰好只铺了自己的路。 阅读全文
posted @ 2022-08-25 08:34 ljq0120 阅读(49) 评论(0) 推荐(0) 编辑
P2615 [NOIP2015 提高组] 神奇的幻方
摘要:P2615 [NOIP2015 提高组] 神奇的幻方 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 很水的模拟,按照题目组就行了 #include<bits/stdc++.h> using namespace std; int N,a[40][40],h,l;//h 行,l 列 阅读全文
posted @ 2022-08-24 13:11 ljq0120 阅读(20) 评论(0) 推荐(0) 编辑
P7585 [COCI2012-2013#1] LJUBOMORA
摘要:P7585 [COCI2012-2013#1] LJUBOMORA - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 如果直接计算,感觉非常不可做的样子。 但是容易发现:在每个分到弹珠的孩子都分到最多的弹珠的前提下,嫉妒值越大,分到弹珠的孩子越少;嫉妒值越小,分到弹珠的孩子越少。也就 阅读全文
posted @ 2022-08-24 12:47 ljq0120 阅读(132) 评论(0) 推荐(0) 编辑
P7713 「EZEC-10」打分
摘要:P7713 「EZEC-10」打分 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 我们不妨来考虑一下这 m 分的分配问题。 由于最后肯定要去掉最低分,所以往最低分上加分对答案没有贡献。 所以我们直接一开始就把最低分刨了,考虑剩下的 n - 1 个分。 由于最后要去掉最高分算平均分 阅读全文
posted @ 2022-08-23 09:56 ljq0120 阅读(79) 评论(0) 推荐(0) 编辑
P1918 保龄球
摘要:P1918 保龄球 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 经典二分题目 首先,我们开个结构体数组,用h来记录保龄球个数,用H来记录原先的坐标。 然后,我们把他快排一次。再用二分查找来查找对应的保龄球个数(sum),但最后的答案是保龄球原先坐标(num) #include< 阅读全文
posted @ 2022-08-22 10:44 ljq0120 阅读(150) 评论(0) 推荐(0) 编辑
gcd
摘要:求最大公因数 #include<bits/stdc++.h> using namespace std; int gcd(int a,int b){ if(b==0) return a; return (b,a%b); } void exgcd(int a,int b,int &d,int &x,in 阅读全文
posted @ 2022-08-21 11:45 ljq0120 阅读(95) 评论(0) 推荐(0) 编辑
快速排序
摘要:#include<bits/stdc++.h> using namespace std; int a[100001],i=0,n;; void qsort(int left,int right) { int i=left,j=right; int mid=a[(i+j)/2]; while(i<=j 阅读全文
posted @ 2022-08-21 11:42 ljq0120 阅读(16) 评论(0) 推荐(0) 编辑
高精度×低精度
摘要:#include<bits/stdc++.h> using namespace std; int main() { char a1[100]; int a[100]= {0},c[100]= {0}; int lena,i,r=0,lenc,b; cin>>a1>>b; lena=strlen(a1 阅读全文
posted @ 2022-08-21 11:40 ljq0120 阅读(12) 评论(0) 推荐(0) 编辑
高精度减法
摘要:#include<bits/stdc++.h> using namespace std; int a[210] ,b[210]; string s1,s2; int main() { cin>>s1>>s2; int l1=s1.length(),l2=s2.length(); for(int i= 阅读全文
posted @ 2022-08-21 11:40 ljq0120 阅读(15) 评论(0) 推荐(0) 编辑
高精度加法
摘要:#include<bits/stdc++.h> using namespace std; char s1[260],s2[260]; int a[260]={0},b[260]={0}; int c[260]={0}; int la,lb,lc,m; int main() { cin>>s1>>s2 阅读全文
posted @ 2022-08-21 11:39 ljq0120 阅读(18) 评论(0) 推荐(0) 编辑
图论
摘要:拓扑排序 #include<iostream> #include<cstdio> #include<cstring> using namespace std; int a[101][101],c[101],r[101],ans[101]; int E; int head[100010]; int t 阅读全文
posted @ 2022-08-21 11:36 ljq0120 阅读(13) 评论(0) 推荐(0) 编辑
P1657 选书
摘要:P1657 选书 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 深搜题 定义一数组发flag[],判断是否选过,在定义一数组,判断是否喜欢f[][] 第几人喜欢第几本 #include<iostream> #include<cmath> #include<cstring> #de 阅读全文
posted @ 2022-08-21 11:25 ljq0120 阅读(30) 评论(0) 推荐(0) 编辑
P2360 地下城主
摘要:P2360 地下城主 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 一道广搜题 #include<bits/stdc++.h> using namespace std; const int dx[]={0,0,0,0,1,-1};//偏移数组,最后两个是上楼或下楼 const i 阅读全文
posted @ 2022-08-21 09:35 ljq0120 阅读(23) 评论(0) 推荐(0) 编辑
P1683 入门
摘要:P1683 入门 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 深搜题 类似于迷宫 注意:瓷砖可以重复走过,但不能重复计数 输入的方阵长宽是反的(想不到吧) 走一个标记一个,而且不用回溯,因为朝四个方向走,没个路口都能走完 自己的那块砖也算!!!ans初始值为1!!! #incl 阅读全文
posted @ 2022-08-21 09:33 ljq0120 阅读(35) 评论(0) 推荐(0) 编辑
P2440 木材加工
摘要:P2440 木材加工 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 一道二分答案题 首先我们输入 n 和 k 并且运用二分找到合适的尺寸,而l 必须要足够小,r 必须要足够的大。题中写道数组中的数最大不会超过 100000000 ,所以我们设 100000001 就可以了。 现在 阅读全文
posted @ 2022-08-21 07:59 ljq0120 阅读(22) 评论(0) 推荐(0) 编辑
P2298 Mzc和男家丁的游戏
摘要:P2298 Mzc和男家丁的游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 很水的广搜的题 先输入,输入时取出起点坐标,然后定义vis数组,查找是否被标记,最后广搜(判断条件是 if(a[nx][ny]!='.'||nx<1||nx>n||ny<1||ny>m||vis[nx 阅读全文
posted @ 2022-08-21 07:54 ljq0120 阅读(10) 评论(0) 推荐(0) 编辑
快速幂模板
摘要:#include<bits/stdc++.h> using namespace std; //推荐写第一种 第二种是递归写法 int quickpower(int a,int b,int n) { int ret=1; while(b) { if(b%2==1) ret=ret*a%n; a=a*a 阅读全文
posted @ 2022-08-20 22:00 ljq0120 阅读(24) 评论(0) 推荐(0) 编辑
栈 队列 基本
摘要:栈,队列 // tt表示栈顶 int stk[N], tt = 0; // 向栈顶插入一个数 stk[ ++ tt] = x; // 从栈顶弹出一个数 tt -- ; // 栈顶的值 stk[tt]; // 判断栈是否为空 if (tt > 0) { } 队列 —— 模板题 AcWing 829. 阅读全文
posted @ 2022-08-20 21:58 ljq0120 阅读(22) 评论(0) 推荐(0) 编辑
stl
摘要:C++ STL简介 vector, 变长数组,倍增的思想 size() 返回元素个数 empty() 返回是否为空 clear() 清空 front()/back() push_back()/pop_back() begin()/end() [] 支持比较运算,按字典序 pair<int, int> 阅读全文
posted @ 2022-08-20 21:57 ljq0120 阅读(24) 评论(0) 推荐(0) 编辑
二分 基本
摘要:满足二分答案题的几个特征: (1)求最大/最小值; (2)答案离散(答案有有限种可能); (3)容易判断答案是否正确 二分答案题的做法即是: (1)确定答案区间; (2)在保证答案在区间内的前提下,逐步缩小区间; (3)当区间缩小到仅包含一个可能解时,该可能解即为答案。 while(l<=r){ l 阅读全文
posted @ 2022-08-20 21:56 ljq0120 阅读(14) 评论(0) 推荐(0) 编辑
01 完全背包
摘要:动态规划 重新学习动规,又有了新的体会 0-1背包 每种物品只取一次 不优化的表达式是 f[i][j]=max{f[i-1[j],f[i-1][j-w[i]]+c[i]}; f[i][j]与前一行有关所以可以用滚动数组优化(随时更新) 空间优化 滚动数组法 改进后方程 f[j]=max(f[j],f 阅读全文
posted @ 2022-08-20 21:41 ljq0120 阅读(7) 评论(0) 推荐(0) 编辑
背包汇总
摘要:www.kancloud.cn/kancloud/pack/70125顾z 的博客 背包问题 写这篇文章主要是为了帮帮新人吧,dalao勿喷.qwq 一般的背包问题问法 每种物品都有一个价值w和体积c.//这个就是下面的变量名,请看清再往下看. 你现在有一个背包容积为V,你想用一些物品装背包使得物品 阅读全文
posted @ 2022-08-20 21:38 ljq0120 阅读(21) 评论(0) 推荐(0) 编辑
宽搜
摘要:dfs 执着,搜到底 切记回溯完一遍,要初始化,可能有对称性 递归回溯法算法框架[一] int Search(int k) { for (i=1;i<=算符种数;i++) if (满足条件) { 保存结果 if (到目的地) 输出解; else Search(k+1); 恢复:保存结果之前的状态{回 阅读全文
posted @ 2022-08-20 21:36 ljq0120 阅读(25) 评论(0) 推荐(0) 编辑
广搜
摘要:广搜 一层层搜索,具有最短性 广搜主要解决的是最优问题,比如最短路径,最少步数 模板 int bfs() { 初始化,初始状态存入队列; 队列首指针head=0; 尾指针tail=1; do { 指针head后移一位,指向待扩展结点; for (int i=1;i<=max;++i) //max为产 阅读全文
posted @ 2022-08-20 21:33 ljq0120 阅读(45) 评论(0) 推荐(0) 编辑