强化学习数学原理笔记
可能会出现公式加载错误的情况,可以直接下载pdf版本。 强化学习数学原理第一章基本概念 grid-world example : 一个机器人走网格的经典例子,机器人尽量避免进入forbidden grid、尽量减少拐弯、不要走出边界、…… state: 状态,表示为一个节点,在grid-world中可以表示为一个格子(也可以添加其他信息到状态,如速度等) state space:状态空间,所有状态的集合。 action:行动,能够使得状态变化的动作。(如向上/下/左/右移动,等) action space:行动的集合,通常依赖于当前的状态。 state transition:状态转移,从一个状态移动到另一个状态。 $s_5 \overset{a_1}{\rightarrow} s_6$ 表示从状态$s_5$ 经过动作$a_1$ 到达状态 $a_6$ state transition probability: 状态转移的条件概率。(例如:$p(s_2|s_1,a_2) = 0.8$ 代表在状态$s_1$,行动$a_2$...
2025蓝桥杯PythonA组省赛题解
2025蓝桥杯PythonA组省赛题解 一定注意,由于在编写本题解时还没有在线题目。所以: 本题解仅供参考,在题意、思路、code上都可能发生错误! A. RGB三色题意我们可以用三个0~255之间的数(r,g,b)来表示一个颜色,如(0,0,255) 表示蓝色。 那么请问所有的颜色中,有多少种颜色是“偏蓝色” 我们定义当且仅当$b > r $ 并且$b > g$ ,$(r,g,b)$ 是偏蓝色的。 思路 & 代码直接暴力枚举! 复杂度$256^3 = 16777216$ 。 1234567ans = 0for r in range(256): for g in range(256): for b in range(256): if(b > g and b > r): ans += 1print(ans) # 5559680 方法二: 使用公式计算: 如果我们给定b,那么r和g可以取$[0,b-1]$ 中的任何一个值,有$b^2$ 种可能。于是我们就有如下公式: ans...
电子扫盲
电子扫盲课文件后缀打开显示后缀可能你想写一个cpp代码,然后创建了一个文本文件叫做code.cpp , 那么实际上你创建的是code.cpp.txt , 他本质上还是一个txt文件。 有时候我们需要更改文件后缀,这时候我们就必须打开文件浏览器的显示后缀的功能了(默认是关闭的) 改后缀会不会出问题?改后缀只是更改了这个文件的标签,并没有更改内部的内容。 谨慎处理不同文件类型之间的后缀相互转换! 文本文件: txt、md、c、cpp、py等(注意docx文件并不是文本文件!) 图片: jpg、gif、png 等等等 不要把doc文件转换为txt文件!!...
十六届蓝桥杯模拟赛3题解
第16届蓝桥杯模拟赛3 python组 思路和答案不保证正确 1.填空如果一个数 p 是个质数,同时又是整数 a 的约数,则 p 称为 a 的一个质因数。 请问, 2024 的最大的质因数是多少? 因为是填空题,所以直接枚举2023~2 ,第一个即是质数也是2024的因数的数就是答案。 1234567891011def isprime(x): for i in range(2,int(x ** 0.5)+1): if(x % i == 0): return False return Truefor i in range(2023,1,-1): if(2024 % i == 0 and isprime(i)): print(i)# 23# 11# 2 2.填空对于两个整数 a, b,既是 a 的整数倍又是 b 的整数倍的数称为 a 和 b 的公倍数。公倍数中最小的正整数称为 a 和 b 的最小公倍数。 请问, 2024 和 1024 的最小公倍数是多少? 经典求lcm: $lcm(a,b) = \frac{a ...
十六届蓝桥杯模拟赛1题解
1. 填空题1题意问2024有多少个质因数 思路法一:枚举所有的因数然后判断是否为质数 法二:使用唯一分解定理(质因数分解定理) 代码唯一分解定理: 1234567891011121314151617181920212223#include<bits/stdc++.h> // bits/stdc++.h是万能库,会包含所有可能用到的函数using namespace std;int main(){ int n = 2024; int cnt = 0; for(int i =2;i<=n;i++){ if(n%i == 0){ cnt++; while(n%i==0){ n/=i; } cout<<i<<' '; } } return 0;}/*输出2 311 123...
Codeforces Round 986 (Div. 2)
https://codeforces.com/contest/2028 A. Alice’s Adventures in “Chess”题意有一个无限大的地图,地图的原点有一个机器人, 即他起初在坐标$(0,0)$处,并且会不断重复一段指令,指令的长度为$n$,指令只包含NESW字符,表示像对应的方向移动。 问机器人能否在某时刻到达坐标$(a,b)$处。 需要注意的是$1\le n,a,b \le 10$ 思路我们固然可以通过处理出一次循环所到达的位置,然后通过每次循环的偏移量来计算每个位置之后是否有可能到达目标。但是这样子虽然时间复杂度很好,但是程序写起来很麻烦。 我们注意到题目中给出的数据很小,因为机器人执行一套指令后,会移动固定的偏移量,于是在经过100轮移动后, 机器人对于$x$...
Codeforces Round 963 (Div. 2)
Codeforces Round 963 (Div. 2) A. Question Marks题意有一场考试一共$4*n$ 道题目,其中答案为A,B,C,D 的题目各$n$ 道, 现在你有一份考试的结果,由字母A,B,C,D 组成,请问最多得到多少分。 思路每种选项最多答对n道题目,我们统计每个选项的出现次数 ,和n取较小值 ,将结果加起来即可。 代码12345678910111213141516171819202122232425262728293031#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...
AtCoder Beginner Contest 346
AtCoder Beginner Contest 346 A - Adjacent Product题意给你一个数组$a1,a_2,…,a_n$ ,现在有$b_i = a_i * a{i+1}$ 输出$b1,b_2,…,b{n-1}$ 思路照着题意写就行 代码12345n = int(input())lst = [int(x) for x in input().split()]ans = []for i in range(len(lst)-1): print(lst[i] * lst[i+1],end=' ') B - Piano题意有一个字符串,由无数个wbwbwwbwbwbw 重复得来,现在给出两个数W和B$(1\le W,B \le 100 )$ 问是否存在某个子串满足:包含$W$个w以及$B$ 个b 思路这个子串一定不会超过200位,所以我们重复wbwbwwbwbwbw 40次(长度$12*40 = 480$)就可以保证所有的子串都在其中,然后我们求所有长度为$W+B$...
牛客周赛round59
比赛链接https://ac.nowcoder.com/acm/contest/89860 A - TD题意有m个人,其中n个人发送了TD,那么从m个人中随机挑选一个人,他发送过TD的概率是多少。 思路直接输出$\frac{n}{m}$ 即可(要注意这里不是整数除法) 代码1234567891011121314151617181920#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> PII;void solve(){ int...
python配置cuda
使用pytorch进行深度学习的时候,往往想用GPU进行运算来提高速度。于是搜索便知道了CUDA。 下面给出一个自检的建议: 检查cuda的版本是否适配自己的GPU。 打开NVDIA控制面板,点击左下角“系统信息”,然后就可以看到NVDIA GPU的详细信息,其中就包含了CUDA的版本。在官网安装合适版本的cuda-toolkit。 安装了cuda,但是命令行输入nvcc -V 报错显示没有nvcc 这时候可能没有将CUDA添加到环境变量。检查系统变量中是否包含了CUDA_PATH ,以及CUDA_PATH_Vx.x , 以及PATH中是否包含了cuda的bin目录。 在命令行输入nvcc -V 可以正常运行,但是在python中使用print(torch.cuda.is_available()) 显示的是False。 这时候考虑torch安装错误。 (直接使用pip install torch 会安装cpu版本的torch,导致无法使用cuda) 卸载原先的torch,pip uninstall...