- 博客(23)
- 收藏
- 关注
原创 动态规划:区间dp(合并石子)
题目链接:282. 石子合并 - AcWing题库#include <iostream>using namespace std;const int maxn = 10000;const int INF = 0x3f3f3f3f;int s[maxn],f[maxn][maxn];// dp[i][j] i~j merge cost min dp[i][j] = min(dp[i][k]~dp[i][j])// k>=i&&k<jint main()
2021-12-21 19:46:41
191
原创 二分:数的范围
题目链接:789. 数的范围 - AcWing题库二分建议就用y总的模板#include <cstdio>#include <cstring>int S[100100];int main(){ int n,m; scanf("%d%d",&n,&m); for(int i = 0;i < n;i++) scanf("%d",&S[i]); for(int i = 0;i < m;i++) {
2021-12-20 16:34:56
103
原创 STL容器使用(vector)
vector#include <vector>Initilize vector<Elem> c;vector<Elem> c(c2);vector<Elem> c = c2;vector<Elem> c(n)vector<Elem> c(n,elem)vector<Elem> c(beg,end)Nonmodifying Operationc.empty()c.size()c.max_size
2021-12-19 17:17:43
223
原创 算法复习:图(邻接矩阵和邻接表)
邻接矩阵#include <iostream>using namespace std;const int N = 520,INF=0x3f3f3f3f;int n,m;int g[N][N];void init(){ for(int i = 1;i <=n;i++) for(int j = 1;j <= n;j++) if(i == j) g[i][j] = 0; else g[i][j] = INF;}// 5 5// 1 2 3// 2
2021-12-19 10:35:34
256
原创 数据结构:单调栈
题目链接:活动 - AcWing#include <cstdio>#include <cstring>int stk[100010],tt;int main(){ int n; scanf("%d",&n); for(int i = 0;i < n;i++) { int x; scanf("%d",&x); while(tt && stk[tt] >= x) tt--; if(tt) printf("%
2021-12-19 09:32:41
580
原创 BFS:走迷宫
题目链接:活动 - AcWing#include <cstdio>#include <queue>#include <cstring>using namespace std;const int maxn = 100+5;int map[maxn][maxn],dp[maxn][maxn];typedef pair<int,int> Pint;int main(){ int n,m; int dx[] = {0,0,-1,1},dy[]
2021-12-18 18:35:20
67
原创 回溯:排列数字
题目链接:活动 - AcWing#include <cstdio>#include <vector>using namespace std;vector<int>path; void backtracking(int n,vector<bool>&used){ if(path.size() == n) { for(int i = 0;i < n;i++) if(i != n-1) printf("%d ",path[
2021-12-18 15:08:30
74
原创 动态规划(线性dp):最长上升子序列
题目链接:895. 最长上升子序列 - AcWing题库f[n]表示从w[0]开始,以w[n]为结尾的数的最大子序列转移方程:f[i] = max(f[i],f[j]+1) 0=<j<i#include <cstdio>#include <algorithm>const int maxn = 1e3+10;int w[maxn],f[maxn];int main(){ int n; scanf("%d",&n); for(i...
2021-12-18 10:49:14
95
原创 Pointnet模型源码解读(更新中)
我看的是这位大佬的代码:GitHub - yanx27/Pointnet_Pointnet2_pytorch: PointNet and PointNet++ implemented by pytorch (pure python) and on ModelNet, ShapeNet and S3DIS.T-Net网络解析class STN3d(nn.Module): def __init__(self, channel): super(STN3d, self)..
2021-12-17 17:35:56
1088
转载 动态规划(区间dp)
石子合并设有 N 堆石子排成一排,其编号为 1,2,3,…,N。每堆石子有一定的质量,可以用一个整数来描述,现在要将这 N堆石子合并成为一堆。每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的顺序不同,合并的总代价也不相同。例如有 4堆石子分别为 1 3 5 2, 我们可以先合并 1、2 堆,代价为 4,得到 4 5 2, 又合并 1,2 堆,代价为 9,得到 9 2 ,再合并得到 11,总代价为 4+9+11=24;如果
2021-12-17 13:56:32
64
原创 动态规划线性dp:数字三角形
给定一个如下图所示的数字三角形,从顶部出发,在每一结点可以选择移动至其左下方的结点或移动至其右下方的结点,一直走到底层,要求找出一条路径,使路径上的数字的和最大。 7 3 8 8 1 0 2 7 4 44 5 2 6 5输入格式第一行包含整数 n,表示数字三角形的层数。接下来 n行,每行包含若干整数,其中第 i 行表示数字三角形第 i层包含的整数。输出格式输出一个整数,表示最大的路径数字和。数据范
2021-12-17 10:24:00
209
原创 01背包问题和完全背包问题
01背包问题题目链接:https://www.acwing.com/problem/content/description/2/有 N 件物品和一个容量是 V的背包。每件物品只能使用一次。第 i件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数,N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N行,每行两个整数 vi,wi,用空格隔开,分别表示第 i 件物品的体积和价值。
2021-12-17 10:06:36
64
原创 进程管理(1)
进程管理(1)进程进程是处于执行期的程序,进程包括代码段,数据段,还有PCB(进程控制块)线程实在进程中活动的对象,内核调度的对象是线程,而不是进程注意:Linux内核通常把进程叫做任务进程描述符及任务结构内核把进程的列表存放在任务队列中(双向循环链表)链表中的每一项类型都是task_struct(称为进程描述符),进程描述符包含一个具体进程的所有信息分配进程描述符看书说实话我还...
2019-11-20 22:15:13
86
原创 python3实现感知机
参考统计学习方法的算法简单实现了感知机算法发到网上给大家参考import pandas as pdimport numpy as npdef sumarray(array): n = 0 for i in array: n+=i return ndef train(input_vec,labels): #训练感知机 w = [0,0] b = 0 n = 0 ...
2019-09-27 20:41:01
264
原创 PAT B 1036 跟奥巴马一起编程
题目链接https://pintia.cn/problem-sets/994805260223102976/problems/9948052858125516801036跟奥巴马一起编程(15分)美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:...
2019-08-22 17:48:23
95
原创 机器学习实战(简单的线性回归)
线性回归模型线性回归模型的基础公式是预测值n是特征数量xi是第i个特征值是第j个模型参数这可以用更简洁的向量公式表示,博主有点懒不想打了我们在训练线性回归模型的时候,需要找到最小化均方误差(MSE)的参数找到使成本函数最小的模型参数值就可以啦有一个标准公式可以求出最小模型参数值,博主不想打了建议百度哈哈哈以下就是简单实现线性回归的代码i...
2019-07-24 20:47:43
353
原创 PAT 1002 写出这个数
https://pintia.cn/problem-sets/994805260223102976/problems/994805324509200384读入一个正整数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数n的值。这里保证n小于10100。输出格式:在一行内输出n的各位数字之和的每一位...
2019-07-21 15:48:42
75
原创 贪心算法(今年暑假不AC)
http://acm.hdu.edu.cn/showproblem.php?pid=2037 Problem Description “今年暑假不AC?” “是的。” “那你干什么呢?” “看世界杯呀,笨蛋!” “@#$%^&*%...” 确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了。 作为球迷,一...
2019-04-13 16:10:52
166
原创 恶搞指数
这个问题十分简单就是一个利用栈的问题,栈遇到左括号就读入,只要遇见右括号,就将栈顶左括号弹出,最终遇到符号B整个过程就停止。将栈的大小输出即为结果#include<iostream>#include<stack>#include<string>using namespace std;int main() { char n; stack<...
2019-03-23 18:43:07
280
原创 As Easy As A+B
水题水题,每天努力一点一点#include<iostream>#include<algorithm>using namespace std;int main() { int i; int S[1000]; while (scanf("%d",&i)!= EOF) { while (i--) { ...
2019-03-05 16:50:25
180
原创 HDOJ 2399
每天一水题记的把get_s() 改成gets()在提交#include<cstdio>#include<cstring>#include<iostream>using namespace std;int main(){ char str[100]; while(gets_s(str)){ char *p = ...
2019-01-23 13:09:03
174
原创 HDUoj Just A Triangle
水题不用考虑它是不是三角形直接就找出最大边用公式进行比较#include<iostream>#include<algorithm>using namespace std;int main(){ int T; int a, b, c; while (cin >> T) { while (T--) { ...
2019-01-20 13:31:16
137
原创 hdoj 1003 最大连续子序列问题
第一次写博客刚刚开始的菜鸡我刚开始看这道题的第一想法就是暴力然后提交果断超时了然后去网上查了一下借鉴了别人的想法这题果断还是要动态规划啊代码如下#include<iostream>using namespace std;int main(){ int T,start,end,max,sum,flag; scanf("%d", &T)...
2019-01-19 19:32:11
134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人