03 2020 档案
摘要:问题: 对n个不同的数构成的数组A[1..n]进行排序,其中n=2k。 解析: 分治思想,对于每个点堆,分成l和r两个点集,分别求每个点集中点的最近对。三种情况: ①l=r:只有一个点,返回 inf ②l = r – 1:两个点,返回两个点的点距。 ③$l = r
阅读全文
摘要:题意: n张卡片,每张卡片有4个属性w,x,isMagic,isSpellBoost分别表示花费,伤害,是否为魔法卡,是否为作用卡。如果使用一张魔法卡,可以使所有未使用的作用卡的费用减1,已知有W的钱,求造成的最大伤害。 思路: dp[i][j]表示使用了i张魔法卡,花费$j
阅读全文
摘要:题意: 给一个小写字母组成的串,问长度为K的不重复的子序列有多少个。 思路: dp[i][j]表示长度为i的最后一位为j的子序列的个数。 转移方程为:dp[i][j]=\sum_{k=0}^{25}{dp[i-1][k]}。 特判K=0时个数为1。 代码: 1 #incl
阅读全文
摘要:题意: 给定整数c和数组a,b。a_i表示通过爬楼梯的方法从第i层到i+1层需要的时间,b_i表示通过坐电梯的方法从第i层到i+1层需要的时间,坐电梯前需要等c单位时间,求从第一层到各层的时间。 思路: $dp[i]=min\left\lbrace\ dp[j
阅读全文
摘要:题意: 一个N行M列的矩阵,其中"."代表空地,"H"代表房子,"m"代表人,其中有n个房子和n个人。现在要求每个人进入其中的一间房子,且每人每走一步需要支付1美元。求最小需要花费多少美元能让所有人都进入到房子中(每个人只能进入一间房子,每个房子只能容纳一个人)。 思
阅读全文
摘要:题意: 有C头奶牛和K台挤奶机,已知每台挤奶机只能给M头牛挤奶。奶牛编号从K+1 到 K+C,挤奶机编号从1 到 K。现在给你一个 (K + C) * (K + C)的矩阵,矩阵第 i 行 第 j 列 的元素代表第i个点到第j个点的距离。求给每头奶牛挤奶的,使得C头奶牛需要行走的路程中的最大路程的最
阅读全文
摘要:1 struct stortest_Floyd { 2 int a[5000][5000]; 3 void floyd(int num) { 4 for (int k = 1; k <= num; k++) { 5 for (int i = 1; i <= num; i++) { 6 for (in
阅读全文
摘要:问题: 对n个不同的数构成的数组A[1..n]进行排序,其中n=2^k. 解析: 根据分治的思想,对于每一个待排序的数组,拆分成左右两端,分别对左右两段进行排序,对于已经有序的两个数组把他们合并起来。 设计(核心代码): 1 void merge(int low,int mid,int high)
阅读全文
摘要:问题: 两种检索算法:在一个排好序的数组T[1..n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0. 解析: ①直接遍历数组,查找x。 ②二分查找。 设计(核心代码): ①遍历 1 void solve1(int x) 2 { 3 for(int i=1;i<=n;++i)
阅读全文
摘要:开权限 控制面板 程序 启用或关闭 Windows 功能 适用于 Linux 的 Windows 子系统 Microsoft store 下载Ubuntu 打开Ubuntu 根据提示设置账号密码 可能要等一会,直到黑框框跳出提示信息 设置密码时,密码不会显示 换源 # 对系统给的镜像源进行备份,以防
阅读全文
摘要:解压压缩包,添加 my.ini 文件 [client] # 以宽松模式设置字符集,一定要注意 loose-default-character-set = utf8 [mysqld] # 以宽松模式设置字符集,一定要注意 loose-default-character-set = utf8 # 解压路
阅读全文
摘要:问题: 使用Dijkstra算法求由顶点a到顶点h的最短路径。 解析: 根据初始点,挨个的把离初始点最近的点一个一个找到并加入集合,集合中所有的点的dis[i]都是该点到初始点最短路径长度,由于后加入的点是根据集合S中的点为基础拓展的,所以也能找到最短路径。 设计(核心代码): 1 void dij
阅读全文
摘要:问题: 用Floyd算法求解下图各个顶点的最短距离。 解析: 任意两点间的最小距离要么直接相连,要么通过另外一个点相连。用每个点去更新两两点之间的距离即可。 设计(核心代码): 1 void floyd() 2 { 3 for (int k = 1; k <= n; ++k) 4 { 5 for (
阅读全文
摘要:获得密钥 输入: ssh-keygen -t rsa -C "your_email@youremail.com" 根据存储位置打开 打开这个文件,把内容复制到GitHub的密钥的位置上 输入: ssh -T git@github.com 出现红框内容则连接成功。 设置姓名和邮箱 输入: git co
阅读全文