python配置cuda
使用pytorch进行深度学习的时候,往往想用GPU进行运算来提高速度。于是搜索便知道了CUDA。 下面给出一个自检的建议: 检查cuda的版本是否适配自己的GPU。 打开NVDIA控制面板,点击左下角“系统信息”,然后就可以看到NVDIA GPU的详细信息,其中就包含了CUDA的版本。在官网安装合适版本的cuda-toolkit。  安装了cuda,但是命令行输入nvcc -V 报错显示没有nvcc 这时候可能没有将CUDA添加到环境变量。检查系统变量中是否包含了CUDA_PATH ,以及CUDA_PATH_Vx.x ,...
ACM板子
动态规划LIS(最长上升子序列)12345678910111213141516//复杂度O(nlogn)int n;cin>>n;vector<int> v(n+5);//原始数据int len = 0;for(int i= 1;i<=n;i++) scanf("%d",&v[i]);vector<int> stk;//stk[i]表示长度为i+1的上升子序列,末尾最小是多少。for(int i = 1;i<=n;i++){ if(stk.empty() || v[i] > stk.back()){//如果能接在后面 stk.push_back(v[i]); }else{//如果不能,就在stk中找第一个大于等于v[i]的stk[t],用v[i]替换 int t = lower_bound(stk.begin(),stk.end(),v[i]) - stk.begin(); stk[t] = v[i]; ...
Educational Codeforces Round 157
[Educational Codeforces Round 168 (Rated for Div. 2)](https://codeforces.com/contest/1997) A. Strong Password题意给你一个只含有小写字母的字符串S, 它的价值为: 第一个字母的价值为2。 之后每个字母,如果和上一个字母相同,价值为1,否则价值为2。 你现在需要向S中插入一个任意字符,使得插入后的字符的代价尽可能大。输出插入字符后的字符串。 思路如果存在两个相邻相同字母, 那么我们就在他们中间插入一个不同的字母,会使得总的代价加三。 如果上述条件不成立, 我们就在最后一个字符的后面加上一个不同的字母,使得总的代价加二。 代码 123456789101112131415161718192021222324252627282930313233343536#include<bits/stdc++.h>using namespace std;#define IO...
Pinely Round 4 (Div. 1 + Div. 2)
[Pinely Round 4 (Div. 1 + Div. 2)](https://codeforces.com/contest/1991) A. Maximize the Last Element题意给一个长度为n的数组 , (n为奇数) , 每次你可以删除数组中相邻的两个数,直到数组剩下一个数,问数组最终剩下的那个数最大为多少。 思路可以发现, 我们最终只有可能留下奇数位的元素a_1,a_3,...,a_n ,对其取max即可。 证明: 整个数组中有undefinedfrac{n+1}{2}个奇数数位,\frac{n-1}{2}个偶数数位, 即奇数下标一定比偶数多一个, 而对于每次删除操作,一定会删除一个奇数下标的元素和一个偶数下标的元素(因为二者相邻), 并且不会改变其他下标的奇偶性, 因此进行\frac{n-1}{2}轮删除后, 奇数下标只剩1$ 个,而偶数下标剩0个。 代码12345678910111213141516171819202122232425#include<bits/stdc++.h>using namespace...
Codeforces Round 962 (Div. 3)
[题目链接https://codeforces.com/contest/1996](https://codeforces.com/contest/1996) A. Legs题意一只鸡有两条腿,一只牛有四条腿,一共有n(n是偶数)条腿,问最少多少只动物。 思路全是牛的时候动物数量最多, 所以ans = \lceil \frac{n}{4} \rceil 代码123456789101112131415161718192021#include<bits/stdc++.h>using namespace std;#define IO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#define int long long#define rep(i,l,r) for(int i = l;i<=r;i++)#define per(i,r,l) for(int i = r;i>=l;i--)const int INF = 0x3f3f3f3f3f3f3f3f;typedef pair<int,int>...
Codeforces Round 961 (Div. 2)
[比赛链接https://codeforces.com/contest/1995](https://codeforces.com/contest/1995) A. Diagonals题意给定一个n*n 的矩阵, 定义对角线为i+j 相同的值,其中i为行号,j为列号 。 给你k个棋子要放在这么一个n*n 的矩阵中, 问最少需要占据多少个对角线。 思路对角线的长度为 n,n-1,n-1,n-2,n-2,...,1,1 。 我们按照对角线的长度从大到小按顺序填充棋子即可。 代码1234567891011121314151617181920212223242526272829303132333435#include<bits/stdc++.h>using namespace std;#define IO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#define int long long#define rep(i,l,r) for(int i = l;i<=r;i++)#define per(i,r,l)...
Codeforces Round 958 (Div. 2)
[比赛链接https://codeforces.com/contest/1988](https://codeforces.com/contest/1988) A. Split the Multiset题意起初S中只有一个数字 n , 你每次操作可以选择S中的一个任意一个数x,将他拆分成最多k个数,并且这k个数的和仍为x ,问最少需要多少次拆分,能让S中只剩下n个1 思路可以发现,每次拆分出k-1 个 1 效率最高。 所以对于n,k ,我们有总拆分次数为undefinedlceil \frac{n-1}{k-1} \rceil$ 。 代码123456789101112131415161718192021#include<bits/stdc++.h>using namespace std;#define IO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#define int long long#define rep(i,l,r) for(int i = l;i<=r;i++)#define...
牛客周赛round51
[牛客周赛 Round 51比赛链接](https://ac.nowcoder.com/acm/contest/86034) A.小红的同余题意给一个**奇数**m,请你找出一个数`x (0 \le x < m) 使得 2x \equiv 1 (mod\ m) 思路2x \equiv 1(mod \ m) 即 2x 取余m等于1. 那么由于m是奇数, 很容易想到一个方案 2x = m+1 , 即x = \frac{m+1}{2} 代码123456789101112131415161718192021#include<bits/stdc++.h>using namespace std;#define IO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);#define int long long#define rep(i,l,r) for(int i = l;i<=r;i++)#define per(i,r,l) for(int i = r;i>=l;i--)const int INF =...
搭建qqbot经历
2024-7-4 虽然最终没有成功配置好qqbot,但是感觉这个过程还是值得记录的,所以写出了下文 最终因为登陆qq时的code45问题导致没有成功登录,据说更换qq号或者配置签名服务器是有可能可行的。 安装环境安装mcl(mirai的控制台)创建一个文件夹mcl 并进入文件夹 1mkdir mcl && cd mcl 寻找适合你的操作系统的的mcl安装包 ([下载链接](https://github.com/iTXTech/mcl-installer/releases)),将安装包下载到刚刚创建的文件夹中 下面shell指令以mcl-installer-1.0.7-linux-amd64为例 1wget https://github.com/iTXTech/mcl-installer/releases/download/v1.0.7/mcl-installer-1.0.7-linux-amd64 赋予可运行权限,运行 1chmod +x...
mysql远程连接
搞了一天的mysql远程连接, 也算是踩过坑了,这里记录一下 如果你的mysql无法被远程连接,那么请依次检查如下条件: 1. 服务器的防火墙(安全组)放行端口如果mysql服务在云服务器上运行, 那么请检查云服务器是否将端口3306开放。 如果没有开放请设置为通行状态。。这里不同的云服务器厂商的截图不同,我这里给出华为云的安全组设置 华为云: 2. 启动mysql的远程连接服务在命令台中使用mysql -uroot 进入你的mysql数据库。1mysql -uroot 选择mysql库1use mysql检查user表中的host和User信息。1select host,User from user;如果你的root字段对应的host是localhost,那么代表root账户只能本地登录。123456789+-----------+------------------+| host ...
