- 博客(36)
- 收藏
- 关注
原创 深度学习(一)数据操作+数据预处理
通过提供包含数值的Python列表(或嵌套列表),来为所需张量中的每个元素赋予确定值。现在inputs和outputs中的所有条目都是数值类型,它们可以转换为张量格式。要想改变一个张量的形状而不改变元素数量和元素值,可以调用reshape函数。为了处理缺失的数据,典型的方法包括插值法和删除法, 这里,我们将考虑插值法。常见的标准算术运算符(+、-、*、/和**)都可以被升级为按元素运算。对张量中的所有元素进行求和,会产生一个单元素张量。dim=0---->指的是按行合并。同时我们还能选择张量不同的行和列。
2023-12-07 10:29:03 200 1
原创 Python学习笔记(三)
在range(a,b)中,循环的数是a~b-1!注意一下这里与C++中的区别(&&,||,!当然以上三个实例也可以用for-in循环实现。python中的三目运算符:(类比C++)上例是随机整数的用法。
2023-10-14 17:48:12 42
原创 Python学习笔记(二)
还有就是Python中的除法“/”默认是浮点数的除,即结果会保留小数。格式化字符串串除了了%s,还可以写为 f’{表达式}’集合、字典去重,列表、元组不去重!定义变量+运行输出举例。
2023-10-09 10:20:38 68
原创 Python学习笔记(一)
文件打开状态 – 空白位置 — 右键 – Run – 即可调出Pycharm的控制台输出程序结果。设置位置:[file] – [Settings]/[Default Settings]。点击Project Files 我们可以仅看到项目。点击Project 我们可以看到配置文件和项目。Python解释器的最大作用:运行文件!PS:如何运行文件?
2023-10-04 11:03:06 43
原创 天梯赛 L2-043 龙龙送外卖
这题是一道很好的DFS题,首先我们要找规律,发现这个最短路径其实是我们所走路程两倍再减去到根节点最长的那条边,因此我们DFS的过程中一直维护一个所走的路径的长度以及最长的点到根节点的距离,就可以把这题给做出来了。补充一下这题的讲解地址,在AcWing,里面有视频讲解,不懂可以去看一下。
2023-03-30 10:39:14 188
原创 天梯赛 L2-044 大众情人
异性缘最大值==同性别中max(1/max(该人到一位异性的距离d[i][j])),然后我们先枚举内层找到内层的max,然后再枚举外层找到外层的max即可。当然我们经过分析之后,先找最短路,然后再对同性群体中每个人与异性距离感最大值里面取个最小值,因此我们就不用取倒数了。而对于max(d[i][j])里面的d[i][j]肯定是越小越好(因为我们要取倒数),所以我们要搞最短路。然后这题最坑的是,他给你的距离是你对别人的距离感,也就是后面我们要找回去的时候是用别人对你的。这题的要我们求的其实是。
2023-03-29 17:51:36 599
原创 天梯赛 L2-041 插松枝
分析:这是一道模拟题。可以用队列和栈一起来模拟,当然也可以像我一样用数组和栈来模拟。这题的话我们基本上按照他给的描述一直写代码就可以了,但是要注意的是在后续的处理中判断一下我们的松枝是否为空,否则就会一直T(1、3、5)这三个测试点,代码里有标注的。
2023-03-29 16:25:51 837
原创 L3-028 森森旅游 (30 分)
L3-028 森森旅游 (30 分)思路:乍一看,题很长,其实他不是很难,就是最后的超时部分处理有点困难。正向建图求用现金从1到第i个点的最少花费反向建图求用旅游金从n到第i个点的最少花费然后我们枚举中间的点,在该点前用现金走,后面用旅游金走,即在该点全部置换成旅游金。为了防止超时,我们利用map进行维护,ans数组存每个点为置换点时所用的最少现金,map【ans【i】】来存等于这种现金的点的数量,这样既排了序,也方便后面的更改汇率操作。两种解法,第二种AC,详见代码,思路不难。21分,TLE4
2022-04-21 15:57:51 466 1
原创 GPLT-天梯赛 最短路问题(1)
1、L3-1 直捣黄龙 (30 分)思路:这题就是一个dijkstra,但是不同的是他有多个更新路径的变量,我们要一个个进行判断即可,但是要注意的是,对于矩阵的初始化,我们一定要将它全部初始化为正无穷,不能将自己到自己的初始化为0,这样是记录不了路径的。#include <bits/stdc++.h>using namespace std;const int maxn = 1e3+10;int g[maxn][maxn];int dis[maxn],path[maxn],city[
2022-04-19 16:20:52 274
原创 L2-3 浪漫侧影 (25 分)
L2-3 浪漫侧影 (25 分)“侧影”就是从左侧或者右侧去观察物体所看到的内容。例如上图中男生的侧影是从他右侧看过去的样子,叫“右视图”;女生的侧影是从她左侧看过去的样子,叫“左视图”。520 这个日子还在打比赛的你,也就抱着一棵二叉树左看看右看看了……我们将二叉树的“侧影”定义为从一侧能看到的所有结点从上到下形成的序列。例如下图这棵二叉树,其右视图就是 { 1, 2, 3, 4, 5 },左视图就是 { 1, 6, 7, 8, 5 }。fig.JPG于是让我们首先通过一棵二叉树的中序遍历序列
2022-04-18 10:17:21 1629 2
原创 GPLT-天梯赛 (较复杂的数据结构题1)
1、L2-022 重排链表 (25 分)思路:纯纯的数据结构题,我的做法是先用结构体存下来,然后再用数组模拟存节点,最后处理一下空节点就可以了,模拟题。#include <bits/stdc++.h>using namespace std;const int maxn = 1e6+10;struct node{ int val; int nextx;}t[maxn];int st,n;vector<int> v;int main(){ scanf("%d%d
2022-04-17 00:15:16 271
原创 GPLT-天梯赛 二叉树&&二叉搜索树&&树的部分
1、7-12 这是二叉搜索树吗? (25 分)思路:该题给出了二叉搜索树的前序遍历,然后题目要求我们判断他是否是一个二叉树,是的话就输出后序遍历,否则输出NO。对于前序二叉搜索树,我们可以知道先遍历左子树,再遍历右子树,那么从根节点开始往后找到第一个大于等于根节点的节点就是右子树根节点,同理从右往左找到第一个小于根节点的节点就是左子树的根节点,镜面则直接相反,开一个vector在搜完左树和右树后存下根节点,这个相当于模拟后序遍历过程了,然后判断是否是二叉搜索树,就直接让看vector的容量是否达到了n即
2022-04-14 20:04:40 832 1
原创 GPLT-天梯赛(深搜和广搜)
1、7-8 地下迷宫探索 (25 分)思路:这是一道深搜题,看上去可以直接顺序深搜并加上栈记录下最小的路径,但是,有个问题,譬如如果一个点对应多个点的时候,这个方法是不行的,所以我们要边搜索边输出,然后同时利用栈的特性存一下返回的路径,具体可以看代码。#include <bits/stdc++.h>using namespace std;const int maxn = 1e3+10;int g[maxn][maxn];int vis[maxn];int cnt[maxn];i
2022-04-08 10:53:25 1166
原创 GPLT-天梯赛 并查集部分
1、7-13 红色警报 (25 分)思路:一道并查集的问题,这题问我们删去了一个城市后连通性是否会受到影响,那我们就进行模拟,先统计原来有几个块,然后再删去这个块后继续统计有多少个连通块,进行比较就知道连通性是否受到了影响。#include <bits/stdc++.h>#define MAX 0x3f3f3f3fusing namespace std;typedef long long ll;typedef pair<int,int> pii;const int m
2022-04-07 15:00:38 287
原创 动态规划练习 kuangbin(1)
A-免费馅饼题目链接思路:经典动态规划问题,类似于金字塔题(从头到尾求所加和的最大值),那么就遵循自底向上原则。三个状态:向左,向右,不动。因此转移方程:dp[j][i]=max(dp[j][i+1],max(dp[j-1][i+1],dp[j+1][i+1]))+xb[j][i];其中dp[j][i]表示第i秒在j位置所能捡到馅饼的最大值。同时开始对数据进行预处理。#include <bits/stdc++.h>using namespace std;const int m
2021-10-08 18:13:27 133
原创 ICPC 铜牌题(1)
A - Little Tiger vs. Deep Monkey题目链接题目大意:刷题比赛,老虎做对一道题的概率是0.5,猴子随意(不用管)求老虎总分不低于猴子的概率p的最低分。思路:开始我想的是把所有的加和情况放进set去重,然后WA了,题目没读懂,后来看了题解,这是一道概率dpdp数组含义:dp[i][j]表示前i个科目老虎得分为j的概率转移方程:dp[i+1][j+a[i]]+=dp[i][j]*0.5; //做对dp[i+1][j]+=dp[i][j]*0.5; //没做对两种情况
2021-09-24 17:43:39 321
原创 kuangbin专题2:最短路径问题
A-Til the Cows Come Home题目链接思路:经典dijkstra问题vis数组:标记,看是否得到过该点的最短路径dis数组:记录下从起点到该点的最短路径,每次要更新mp数组:存图,一定要注意初始化mp数组步骤:1、初始化各类辅助数据结构2、外层1~n-1循环(找n-1次),内层找最小+更新当前最小3、输出所要的结果#include <iostream>#include <stdio.h>#define MAX 0x3f3f3f3fusing
2021-09-18 19:50:54 122
原创 2021/7/14 二分专题
1、分治+二分A - 4 Values whose Sum is 0https://vjudge.net/contest/446761#problem#include <iostream>#include <algorithm>#include <stdio.h>#define MAX 0x3f3f3f3fusing namespace std;typedef long long ll;const int maxn = 4e3+10;int a[max
2021-09-16 10:23:25 132
原创 AtCoder 刷题
C - Distribution题目链接思路:3个数组间相互刷新,水题,但是一定要注意一点:这是一个环!!!!!所以从头是从2开始处理,然后再从1开始处理一遍#include <bits/stdc++.h>#define MAX 0x3f3f3f3fusing namespace std;typedef long long ll;const int maxn = 2e5+10;ll s[maxn], t[maxn];ll dis[maxn];int n;int main
2021-09-16 00:54:38 333
原创 2021/9/9 CF刷题训练
A - Three Friends题目链接思路:3个数可以选择+1或者-1或者不变,最终要求操作一次后3者之间差的绝对值最小,2种思想:1、数学角度考虑2大1小,2小1大等情况进行考虑。2、最简单的思路:3重循环6次遍历所有情况,拿最小值。#include <bits/stdc++.h>using namespace std;typedef long long ll;const long long inf=233333333333333; //要开足够大0x3f3f3f3f不够大
2021-09-16 00:27:02 288
原创 kuangbin专题 1、搜索(低阶)
A - 棋盘问题https://vjudge.ppsucxtt.cn/contest/65959#problem/A思想:dfs搜是否不同行不同列的方案,主要的步骤在于vis数组的标记和释放的顺序。#include <iostream>#include <stdio.h> #define MAX 0x3f3f3f3fusing namespace std;typedef long long ll;const int maxn = 10;int n, k, sum;
2021-09-09 09:07:45 124
原创 2021/7/6 CF训练1(基于数组的一些操作)
1、数组的查重(检查各项后是否重复出现)A - Do Not Be Distracted!https://vjudge.net/contest/445659#problem/A题解:利用标记数组vis【maxn】进行解题#include <bits/stdc++.h>using namespace std;char s[55];int vis[27]; //标记数组,检查是否前面出现过该字母int main(){ int t, n; cin >> t; whil
2021-09-08 09:12:35 116
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人