- 博客(28)
- 收藏
- 关注
原创 0基础手把手教你弄寝室指纹识别开门装置(arduino uno,as608)
就是闲的没事,看见某超级大佬也弄了一个,觉得挺好,然后自己也实践实践。总共,大概花了一周时间吧。自己查考博客:https://blog.youkuaiyun.com/woshi_ziyu/article/details/88200664https://blog.youkuaiyun.com/m0_54003252/article/details/114542500我也是参考这篇博客采购的这个是lcd的使用方法:https://blog.youkuaiyun.com/acktomas/article/details/8813640
2021-04-21 11:31:23
6311
18
原创 C. Floor and Mod
题意:给你一个x,y来限制a,b范围,1<=a<=x,1<=b<=y。让你在x,y范围内a和b,有几对a/b向下取整等于amod(余)b。思路:我首先在草稿纸上画出了一些范围然后发现了规律。3 44 3 8 35 4 10 4 15 46 5 12 5 18 5 24 57 6 14 6 21 6 28 6 35 6我们设第一列左边数是left,右边是right首先第一层都是left=right+1。第二层是left=right*2+2。第三层是le
2021-02-17 09:52:29
393
原创 动态规划之线性DP入门——最长上升子序列模型
基础:最长上升子序列,最长上升子序列优化(时间复杂度nlogn)扩展/应用:怪盗基德的滑翔翼,登山,合唱队形,友好城市进阶:最长公共上升子序列,拦截导弹,导弹防御系统,最大上升子序列和前言:最长上升子序列可以说是最常见的dp了,所以它可以和一些思想结合或者优化它本身,题目变形也多,难度也会稍微高数字三角形模型,个人感觉。ps:中间有些题在落谷也有,落谷数据是加强过的,所以如果该题落谷有数据加强,我会附上思路,解释还有代码。最长上升子序列状态表示:f(i)(一般情况一维序列用一维就行了)表示的
2021-02-09 14:15:24
2986
原创 动态规划之线性DP入门——数字三角形模型(数字三角形、摘花生、最低通行费用、方格取数、传纸条)
基础例题:数字三角形扩展例题:摘花生,最低通行费用 (数字三角形运用)进阶例题:方格取数(数字三角形变形)练习题:传纸条数字三角形状态表示从集合的角度分析: f[i][j]表示从(1,1)走到(i,j)的路线属性: 所有从(1,1)走到(i,j)到最大值 (一般又三种min,max,数量)此题是max状态计算我们从最后一步入手划分集合(求出转移方程):将f(i,j)划分成两个集合1.左边集合 最后一步是从上面下来 从(i-1,j)下来的2.右边集合 最后一步是从左上下来 从(i-1
2021-02-08 15:55:48
427
原创 校赛总结
正文:今天下午正哥的一句话突然击碎了我的惯性思维,说实话就是一语惊醒梦中人,说意思就是你的表达能力的问题已经严重影响写代码上了,说话时候,意思表达不清楚,现在回想起原来写代码就是写稍微复杂一点的代码量的代码时候,自己完全没梳理清楚写代码思路,只想出来了题目思路,就开始往上一顿乱敲(代码简单可能还行,复杂点的自己写着写着就没了,因为自己写到后面都不知道自己在写的是什么!)感觉这个过程和我说话,表达时候脑袋里的过程完全一模一样,说话时候也是自己思路都没理清楚(敲代码时候自己还没梳理清楚自己该怎么写代码的思路)
2020-12-07 18:48:06
261
原创 动态规划算法——最长公共子序列
#include<iostream>#include<unordered_set>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<cmath>#include<math.h>#include<vector>#include<stack>#include<que
2020-12-07 17:11:16
196
原创 拓扑排序
#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<cmath>#include<math.h>#include<vector>#include<stack>#include<queue>#include<map>#in
2020-12-02 20:57:21
142
原创 2020.12月天梯赛总结
天梯赛总结这次比赛我采用心里默念慢慢写,冷静的方法应对这次天梯赛比赛,比赛开始前1小时一直告诉自己慢慢写,别急,别慌,结果不知道感觉还没控制好,距离比赛30分钟到开始比赛到时候上了5次厕所。开始比赛了,自己还是有点感觉自己激动了,强行告诉自己慢慢来,慢慢的打开dev,慢慢的敲完头文件,还时不时默念别急,别急,写完第一题和第二题是突然服务器错误,我的天!啊这?冷静!冷静!。。。。。好等了10分钟好了,一看榜单我的天过这么快,心态有点裂开。。开始有一点点慌张的写剩下的题。导致中途写到有几个题部分正确,我其实快
2020-12-02 20:45:29
741
3
原创 最小生成树——kruskal算法
#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cmath>#include <math.h>#include <vector>#include <stack>#include <queue>#include <
2020-12-02 20:22:36
218
原创 最小生成树——质朴prim算法
#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cmath>#include <math.h>#include <vector>#include <stack>#include <queue>#include <
2020-12-02 20:20:26
132
原创 自己的算法库
前言:自己决定在今天加一个叫做算法库的东西,就像c++有STL库一样,当然我这个算法库和STL库内容是不一样的,这个算法库是自己学会并且能熟练的在以后比赛中打出,关于自己对这个熟练对定义做出解释:理解算法思路,并能手撕代码(就是上手就能写出算法代码)。做算法库的目的:归类自己学过的算法,并且了解自己进度(查缺补漏)可以对自己的进度做出调整。或者让我以后队友看,具体了解我会什么,也供大家学习。每次更新我都会在算法或者题目后面更新时间ps:因为目前是开始进步阶段(时间有点紧张),所以就先贴自己敲的板子
2020-12-01 19:48:33
466
原创 最短路算法——spfa算法
#include<iostream>#include<unordered_set>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<cmath>#include<math.h>#include<vector>#include<stack>#include<que
2020-12-01 17:59:15
135
原创 最短路算法——bellman_ford算法
#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cmath>#include <math.h>#include <vector>#include <stack>#inc
2020-12-01 17:19:19
153
原创 最短路算法——堆优化dijkstra
#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cmath>#include <math.h>#include <vector>#include <stack>#inc
2020-12-01 16:38:09
218
原创 最短路算法模板——质朴dijkstra算法
#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>#include <cmath>#include <math.h>#include <vector>#include <stack>#include <queue>#include <
2020-12-01 16:36:59
167
原创 Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) (A,B,C,D,E,F)题解
总结:终于补完所有题目了,感觉整套题集,没有那么离谱(可能不是div1)除了一个E题考了一个知识点(也可以不用那个知识点解大佬求教QAQ)其他题都是可以写的,我记得一个大佬说在codeforces里只要那个题出题人超过100个人那么这道题就是可以想出来的,否则不是人写的,我觉得非常道理意思就是除了div1最后一题,我们都是可以尽自己的努力写出来或者补题写出来的。补完这套题收获也是不少的,一个知识点(康托展开与康托逆展开),感觉思路灵活了许多,最明显的感觉就是性格不太那么激动了,可能还会有点(目前没有比赛可
2020-11-12 20:20:14
266
原创 Codeforces Round #681 (Div. 2)F. Identify the Operations
链接:http://codeforces.com/contest/1443/problem/F题意:给你两个数组,a,b,关系是a包含于b(a中元素多于b,b中全部元素是a中的元素),你要让b数组里面的元素按顺序在a里依次消除对应元素附件的元素(只能删除一个数,左边(i+1)或者右边(i+1)),如果附近消除的元素都是b种元素且排序排在该元素后面(意思就是他旁边的两个元素都是在他顺序的后面)则不能删除,输出0。否则输出剩下元素的有多少种组合。(多少种删法)答案取模。思路:如果b中的元素在a中对应左
2020-11-12 19:58:08
139
原创 Codeforces Round #681 (Div. 2)E题解
链接:http://codeforces.com/contest/1443/problem/E题意:给你一个长度为n的排序[1,2,3,4…,n],你现在有2种操作:1.对某个区间[l,r]求和。2.将排序依次往后递推x次按字典序。(q,n<=2e5,x<=1e5)思路:xq<=1e52e5=2e10次,所以14的阶乘>2e10次,所以只用计算前14位的位置变换即可,用逆康托展开暴力更新前14位位置,然后维护前缀和。不知道逆康托展开的同学点这里:逆康托展开代码:
2020-11-11 23:28:24
230
原创 算法讲解:康托展开与逆康托展开原理与代码实现
康托展开与逆康托展开本文章是我看过以下两篇博客,思考后所写,在此感谢这两篇文章作者。文章部分引用了他们的原话。连接:https://blog.youkuaiyun.com/ajaxlt/article/details/86544074连接:https://blog.youkuaiyun.com/ltrbless/article/details/87696372序言:本文章会介绍康托展开与逆康托展开的原理与代码实现1.概念康托展开是一个全排列到一个自然数的双射,常用于构建哈希表时的空间压缩。 康托展开的实质是计算
2020-11-11 23:00:18
541
原创 D. Extreme Subtraction 题解
链接:http://codeforces.com/contest/1443/problem/D题意:给你一个a数组由n个正整数构成你有两个操作:1.1~k项都减去任意正整数。2.n~n-k项也都减去任意正整数。要求被减后的数不能为负数,求能不能把这个数组的每个数变成0(1<=k<=n)思路:差分,我们想前k项减去x,操作1就相当于第k+1项+x,操作2就相当于-x,我们想让数组变成0,那么差分数组也要变成0,也就说除了差分第一项,其他项全是0,so我们要将第一项无限次操作,使数减
2020-11-04 22:04:50
236
原创 codeforce div2 681 C. The Delivery Dilemma
链接:http://codeforces.com/contest/1443/problem/C题意:有n道菜,每道菜有两种操作:1.点外卖,外卖员需要花a[i]时间送到家,可同时让多个外卖员送。2.自己去拿菜,需要花b[i]时间,一次只能拿一道。求最少需要多少时间可以拿完全部菜?思路:排序后,遍历一遍,枚举答案求最小值即可。#include<iostream>#include<unordered_set>#include<cstdio>#includ
2020-11-03 13:20:32
415
原创 codefoce div2 A. Kids Seating B. Saving the City题解
A. Kids Seating链接:http://codeforces.com/contest/1443/problem/A题意:你是老师,有4n个座位,下标是1~4n,你需要安排n个小孩座哪里,有2个要求:1.任意两个小孩座位号a,b。gcd(a,b)不能等于1;2.任意两个小孩座位号a,b。a不能整除吧,b不能整除a。输出n个小孩子的座位号分别是多少思路:只要最大的座位号小于最小的座位号的两倍就行因为相邻的两个数字gcd等于1,所以我让每个数字间隔2即可2^x,其中x为可容纳小孩数量,
2020-11-03 01:41:24
439
原创 2019-2020 ICPC Asia Taipei-Hsinchu Regional Contest(C,D,H,J,K)
前言:萌新的第一次尝试写写icpc题,就上cf Gym里找了一套4星难度的题(满星是5星),因为自己一直刷视频学算法感觉到无聊,所以自己决定修正下自己学习算法的方法,改为刷题遇见后去学习,这样能很好的刺激自己主动性。所以每一套icpc的题我自己都要求写完每一道题,尽量ak,除非真的没有题解,一点提示都没有,再加上自己毫无想法。关于第一次写icpc:个人认为台北这套题非常适合当萌新的第一套icpc题,个人就只写了签到,剩下的会慢慢更新,本场签到题极其温和,但是剩下的没看cf上4星说明还是非常有难度,只是不是
2020-11-02 22:31:18
1888
原创 2020.7.16集训总结
今天学习内容:1.dp背包问题(1)01背包:状态方程(二维):dp[i][j]=max(dp[i-1][j],dp[i-1][j-m[i]]+v[i]) (j>=m[i])方程中dp[i-1]可删去简化变成一维,dp[j]=max(dp[j],dp[j-m[i]]+v[i])。注意:二维方程需要if判断条件,但是一维不需要,(2)完全背包:就是拿物品次数变成无数次。状态方程:dp[i][j]=max(dp[i-1][j],dp[i-1][j-k*m[i]]+k *v[i]) (0<
2020-07-16 22:38:12
217
原创 CF-1343B Balanced Array题解
一道数学题,只要a/2%2判断是是否等于0,如果等于0则yes,否则就是no,然后输出数组,n/2左边是偶数,就2 4 6 8 10 这样输出就行。右边是1 3 5 7 ,但是最后一位是偶数(n/2项)减奇数(n/2-1项)的差。#include<iostream>#include<cstdio>using namespace std;int main(){ in...
2020-04-27 13:59:49
279
原创 CF1343A Candies题解
一道数学题。代码里的n是代表x+2x+4x等等的和,因为k>1,所以从2开始;n的和把x提出来,就是x*(1+2+4+…);#include<cstdio>#include<iostream>#include<cmath>using namespace std;int main(){ int count,x; cin>>cou...
2020-04-26 22:12:36
635
原创 HUD 2453 An easy problem题解
这道题很简单,就是考察下基础。直接上代码了。#include<iostream>#include<cstdio>using namespace std;int main(){ int count,result,b; char a; cin>>count; for(int i=0;i<count;i++){ result=0; cin...
2020-04-05 22:10:26
167
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅