- 博客(45)
- 资源 (9)
- 问答 (5)
- 收藏
- 关注
原创 均分纸牌问题总结
显然,最终每一堆的张数都会变成纸牌总数的平均值,所以,每一堆冗余的牌一定要分给其它堆。NOIP 2002 的这道题一次可以移动多张纸牌,所以答案数是。个干草堆,可以将任意位置的干草堆向前或向后移动若干个,使第。其他堆上取的纸牌,可以移到相邻左边或右边的堆上。个干草堆,询问最少需要移动多少个干草堆。的堆上取的纸牌,只能移到编号为。的堆上取的纸牌,只能移到编号为。堆纸牌需要向左边传的纸牌数,堆纸牌需要向左边传的纸牌数,,答案就是移动的纸牌总数。堆纸牌,纸牌的总数是。为纸牌总数的平均值。为纸牌总数的平均值。
2025-07-13 15:55:25
17
原创 反悔贪心学习笔记
贪心获得的局部最优解往往不是全局最优解,在我们需要全局最优解时,就要进行反悔操作。反悔贪心一般有两种实现方式 - 反悔堆和反悔自动机。反悔堆:按照某种顺序,依次考虑可能的决策,通过堆来维护当前最优解,如果遇到当前维护的解不是最优的时候,回退之前的某种决策并更新最优解。反悔自动机:设计一种反悔策略,使得任意一种贪心策略都可以到达最优解。一般是利用差值来实现自动更新最优解。
2025-07-13 15:53:05
21
原创 线性代数学习笔记
对于一个矩阵AAAdetA∣A∣∑p−1τp∏i1naipidetA∣A∣p∑−1τpi1∏naipi其中ppp表示一个排列,所有可能的ppp则是111到nnn这nnn个数的全排列。τp\tau(p)τp表示一个排列ppp的逆序对个数。
2025-07-13 15:50:48
103
原创 基础数论学习笔记
若a−bmodn0a−bmodn0,则称aaa和bbb同余,记为a≡bmodna≡bmodn读作aaa和bbb在模nnn的意义下同余。
2025-07-13 15:48:03
212
原创 组合数学学习笔记
的序列,求它们能排列成的所有序列中,能够满足任意前缀序列中 0 的个数都不少于 1 的个数的序列有多少个。个组成的每个集合, 剩余末取 出的元素也构成一个集合, 两个集合一一对应, 所以性质 1 成立。构造一个映射,将每一种原问题的方案映射为新问题的一种方案,并使答案更容易计算。次,回到根节点,保证任意时刻向下走的次数大于等于向上走的次数。个排成一行,不考虑每个数的顺序,有多少种不同的选法,写作。个排成一行,考虑每个数的顺序,有多少种不同的选法,写作。交集的补等于补集的并,并集的补等于补集的交。
2025-07-12 17:07:20
359
原创 Visual Studio Code 更改侧边栏字体样式(CSS)
本文同时在我的博客发布:Visual Studio Code 更改侧边栏字体样式(CSS) - Skykguj 's Blog (blog.sky390.cn)Visual Studio Code(以下简称 VSCode) 窗口放大以后侧边栏的字体样式异常难看,让人感到非常别扭,bdfs 也找不到完整的解决方案,最后在知乎看了 muxu.jiu 的回答,茅塞顿开,决定写一篇详细的教程。因为 VSCode 主要使用 TypeScript (TypeScript 是 JavaScript 的一个超集) 编写
2022-03-16 11:36:21
1810
1
原创 VSCode 使用 Code Runner 插件无法编译运行文件名带空格的文件的解决方法
本文同时在我的博客发布:VSCode 使用 Code Runner 插件无法编译运行文件名带空格的文件 - Skykguj 's Blog (sky390.cn)本文同时在博客园发布:https://www.cnblogs.com/Skykguj/p/14981870.html使用 Visual Studio Code 写 C++ 程序最烦心的是大概就是使用 Code Runner 插件无法编译运行文件名带空格的文件了,这个问题困扰了我好久,虽然不影响学习,但太多分隔符总觉得不顺眼,于是我仔细研究了一下
2021-07-11 15:49:55
1296
3
原创 Python 递归解决汉诺塔问题
代码如下:def hanoi(n, a, b, c): step=0 if n == 1: print(a, '-->', c) else: hanoi(n - 1, a, c, b) print(a, '-->', c) hanoi(n - 1, b, a, c)n=input("请输入汉诺塔上圆盘的个数:")n=int(n)hanoi(n, 'X', 'Y', 'Z') #.
2020-07-30 22:32:15
373
原创 C语言递归解决汉诺塔问题
法国数学家爱德华·卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。 ...
2020-07-30 22:20:49
343
转载 函数 - 计算机函数
基本信息中文名称外文名称函数function一个较大的程序一般应分为若干个程序块,每一个模块用来实现一 个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言中,子程序的作用是由一个主函数和若干个 函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。函
2020-05-17 10:47:35
1378
原创 对于两个正整数m,n的最大公因数可以用do—while实现
来源:《信息学奥赛一本通(C++版)》P64【题目描述】4.9 对于两个正整数 m,n 的最大公因数可以用do—while实现。代码如下,请完善:#include<iostream>using namespace std;int main(){ int m,n,r; cin>>m>>n; do //碾转相除法 { r=m%n; m=____; n=____; } while(____); cout<<"the great
2020-05-16 14:56:29
2138
原创 微软VC++6.0字体设置工具
1.关于VC6.0微软公司 的VC6.0莫过于是大家最常用的编译器了,它功能强大,便于编写程序,虽然现在 微软公司 不再支持它了,并且陆续又推出了 <VS2010>,<VS2015>,<VS2017>,<VS2019>等更强大的编译器,但是使用VC6.0的人仍然很多,由于年代太久远,字体很少,所以我要向大家推荐一款字体设置器。2.VC6.0字体设置工具界面如下:...
2020-05-13 13:51:01
1093
原创 《信息学奥赛一本通(C++版)》1105:数组逆序重存放
来源:《信息学奥赛一本通(C++版)》测评地址:信息学奥赛一本通在线测评【题目描述】将一个数组中的值按逆序重新存放。例如,原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8。【输入】输入为两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔。【输出】输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。【输入样例】58 6 5 4 1【输出样例】1 4 5 6 8代码如下:注:代码仅供参考,不只有一种解法。#
2020-05-11 13:27:33
814
原创 《信息学奥赛一本通(C++版)》阶乘之和【优化程序】
来源:《信息学奥赛一本通(C++版)》P73【阶乘之和】【题目描述】4.19 阶乘之和。输入n,计算s=1!+2!+3!+…+10!的末六位(不含前导0)。n<=10^6,10!表示前n个正整数之和。【输入样例】10【输出样例】37913代码如下:注:代码仅供参考,不只有一种解法。//此为《信息学奥赛一本通(C++版)》阶乘之和的优化程序。#include<cstdio>int main(){ int n,s=0,f=1; scanf("%d",&n
2020-05-09 23:02:48
454
原创 《信息学奥赛一本通(C++版)》阶乘之和
来源:《信息学奥赛一本通(C++版)》P73【题目描述】4.19 阶乘之和。输入n,计算s=1!+2!+3!+…+10!的末六位(不含前导0)。n<=10^6,10!表示前n个正整数之和。【输入样例】10【输出样例】37913代码如下:注:代码仅供参考,不只有一种解法。#include<cstdio>int main(){ int n,s=0; scanf("%d",&n); for(int i=1;i<=n;i++) { int f=1
2020-05-09 22:56:01
804
原创 《信息学奥赛一本通(C++版)》分解质因数
来源:《信息学奥赛一本通(C++版)》P72【题目描述】把一个合数分解成若干个质因数乘积的形式(即求质因数的过程)叫做分解质因数。分解质因数(也称分解素因数)只针对合数。【输入】输入一个正整数n,将n分解成质因数乘积的形式。【输入样例】36【输出样例】36=2*2*3*3代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main(){ int n,i=2; cin>>n
2020-05-09 22:48:13
2577
原创 《信息学奥赛一本通(C++版)》输出所有形如aabb的四位完全平方数
来源:《信息学奥赛一本通(C++版)》P71【题目描述】输出所有形如aabb的四位完全平方数(即前两位数字相等,后两位数字也相等)。代码如下:注:代码仅供参考,不只有一种解法。//pow函数需要调用cmath头文件或math.h头文件。#include<iostream>#include<math.h>using namespace std;int main(){ for(int x=32; ;x++){ int n=pow(x,2); if(n>
2020-05-09 22:18:24
1597
原创 《信息学奥赛一本通(C++版)》输出100~200中所有的素数
来源:《信息学奥赛一本通(C++版)》P71【题目描述】4.16 输出100~200中所有的素数。代码如下:注:代码仅供参考,不只有一种解法。//函数sqrt和函数floor需要调用math.h头文件。#include<iostream>#include<math.h>using namespace std;int main(){ for(int seek=100;seek<=200;seek++){ int enumerate=2; while
2020-05-09 22:12:25
426
原创 《信息学奥赛一本通(C++版)》水仙花数
来源:《信息学奥赛一本通(C++版)》P68【题目描述】百钱买百鸡问题。鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?代码如下:注:代码仅供参考,不只有一种解法。//pow函数需要调用cmath或math.h。#include<iostream>#include<math.h>using namespace std;int main(){ int digit,unit,decade,hundred; for(digit
2020-05-09 22:00:16
1285
原创 《信息学奥赛一本通(C++版)》百钱买百鸡问题
来源:《信息学奥赛一本通(C++版)》P68【输入样例】百钱买百鸡问题。鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main(){ int cock,hen,chick; for(cock=0;cock<=100;cock++) for(hen=0;hen<=100;hen++) {
2020-05-09 14:27:01
854
原创 《信息学奥赛一本通(C++版)》“*”构成的n行的直角三角形
【题目描述】对于给定的自然数n(n<20),在屏幕上输出仅由“*”构成的n行的直角三角形。例如:当n=5时,输出:* * * * * ** * * * * * * * *代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main(){ int i,j,n; cin>>n; for(i=1;i<=n;++i){for(j=1;j<=
2020-05-09 14:17:29
2889
原创 《信息学奥赛一本通(C++版)》求s=1!+2!+3!+...+10
【题目描述】例4.12 求s=1!+2!+3!+…+10!代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main() { int t2=0; for (int i = 1; i <= 1000; ++i) { int t = 1; for (int j = 1; j <= i; ++j) { t *= j; } t2 += t; } cout << t
2020-05-09 14:03:39
1801
原创 《信息学奥赛一本通(C++版)》求校体操队的人数
来源:《信息学奥赛一本通(C++版)》P65【题目描述】例4.11 校体操队到操场集合,排成每行2人,最后多出1人;排成每行3人,也多出1人;分别按每行4、5、6人,都多出1人;当排成每行7人,正好不多。求校体操队至少多少人?代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main(){ int times=0; bool yes; do{ yes=true; times=times+
2020-05-09 13:52:16
2938
原创 《信息学奥赛一本通(C++版)》求1992个1992的成绩的末两位数
来源:《信息学奥赛一本通(C++版)》P65【题目描述】例4.10 求1992个1992的成绩的末两位数是多少?代码如下:注:代码仅供参考,不只有一种解法。#include<iostream>using namespace std;int main(){ int a=1,t=0; do{++t;a=(a*92)%100;}while(t!=1992); cout<<a; return 0;}...
2020-05-09 13:46:00
1216
原创 《信息学奥赛一本通(C++版)》数据统计
来源:《信息学奥赛一本通(C++版)》P61【题目描述】输入一些整数,求出它们的最小值、最大值和平均值(保留3位小数)。输入保证这些数都是不超过1000的整数。【输入样例】2 8 3 5 1 7 3 6【输出样例】1 8 4.375代码如下:注:代码仅供参考,不只有一种解法。#include<cstdio>#define INF 100000000int main() { int x, n = 0, min=INF, max=-INF, s = 0;
2020-05-09 13:40:03
1836
原创 《信息学奥赛一本通(C++版)》1089:数字反转
来源:《信息学奥赛一本通(C++版)》测评地址:信息学奥赛一本通在线测评【题目描述】给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零,例如输入−380−380,反转后得到的新数为−83−83。【输入】输入共 1 行,一个整数N。−1,000,000,000≤N≤1,000,000,000。【...
2020-05-06 14:25:17
1351
原创 《信息学奥赛一本通(C++版)》【目录】
《信息学奥赛一本通(C++版)》1053:最大数输出《信息学奥赛一本通(C++版)》1054:三角形判断《信息学奥赛一本通(C++版)》1055:判断闰年《信息学奥赛一本通(C++版)》1056:点和正方形的关系《信息学奥赛一本通(C++版)》1057:简单计算器《信息学奥赛一本通(C++版)》1059:求平均年龄《信息学奥赛一本通(C++版)》1060:均值...
2020-05-06 11:48:23
2420
原创 《信息学奥赛一本通(C++版)》1060:均值
来源:《信息学奥赛一本通(C++版)》测评地址:信息学奥赛一本通在线测评【题目描述】给出一组样本数据,包含n个浮点数,计算其均值,精确到小数点后4位。【输入】输入有两行,第一行包含一个整数n(n小于100),代表样本容量;第二行包含n个绝对值不超过1000的浮点数,代表各个样本数据。【输出】输出一行,包含一个浮点数,表示均值,精确到小数点后4位。【输入样例】21.0 3.0【...
2020-05-05 22:05:32
1405
原创 《信息学奥赛一本通(C++版)》1059:求平均年龄
来源:《信息学奥赛一本通(C++版)》测评地址:信息学奥赛一本通在线测评【题目描述】班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。【输入】第一行有一个整数n(1≤ n ≤ 100),表示学生的人数。其后n行每行有1个整数,表示每个学生的年龄,取值为15到25。【输出】输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。【...
2020-05-05 21:57:49
2244
原创 利用for循环计算n!的值
来源:《信息学奥赛一本通》p56【题目描述】利用for循环计算n!的值。【分析】n!=1×2×3×···×n代码如下:注:代码仅供参考,不只有一种解法。#include<cstdio>int main(){ long long s=1; int n; scanf("%d",&n); for(int i=1;i<=n;++i) s*=i; pr...
2020-05-05 21:45:24
11101
原创 利用do while循环,分别计算1-100中奇数的和、偶数的和【方法二】
【题目描述】利用do while循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//do while循环【方法二】#include<iostream>using namespace std;int main(){ int i=1,sum1=0,sum2=0; do{if(i%2==0) sum1=sum1+i;else s...
2020-05-05 14:45:29
5607
原创 利用do while循环,分别计算1-100中奇数的和、偶数的和【方法一】
【题目描述】利用do while循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//do while循环【方法一】#include<iostream>using namespace std;int main(){ int i=1,sum1=0,sum2=0; do{if(i%2==0) sum1=sum1+i;else s...
2020-05-05 14:42:27
8963
3
原创 利用while循环,分别计算1-100中奇数的和、偶数的和【方法二】
【题目描述】利用while循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//while循环【方法二】#include<iostream>using namespace std;int main(){ int i=2,j=1,sum1=0,sum2=0; while(i<=100) {sum1=sum1+i;sum2...
2020-05-05 14:38:07
5960
原创 利用while循环,分别计算1-100中奇数的和、偶数的和【方法一】
【题目描述】利用while循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//while循环【方法一】#include<iostream>using namespace std;int main(){ int i=1,sum1=0,sum2=0; while(i<=100) {if(i%2==0) sum1=sum1...
2020-05-05 14:31:26
11912
原创 利用for循环,分别计算1-100中奇数的和、偶数的和【方法二】
来源:《信息学奥赛一本通》p51【题目描述】利用for循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//for循环【方法二】#include<iostream>using namespace std;int main(){ int sum1=0,sum2=0; for(int i=1;i<=100;i++) {i...
2020-05-05 14:23:16
6709
原创 利用for循环,分别计算1-100中奇数的和、偶数的和【方法一】
来源:《信息学奥赛一本通》p51【题目描述】利用for循环,分别计算1-100中奇数的和、偶数的和。代码如下:注:代码仅供参考,不只有一种解法。//for循环【方法一】#include<iostream>using namespace std;int main(){ int sum1=0,sum2=0; for(int i=2,j=1;i<=100;i=i...
2020-05-05 14:04:23
12423
1
原创 分别利用for、while、do while,循环求1-100的和
【题目描述】分别利用for、while、do while,循环求1-100的和。代码如下:注:代码仅供参考,不只有一种解法。//for循环#include<iostream>using namespace std;int main(){ int sum=0; for(int i=1;i<=100;i++)sum=sum+i; cout<<"su...
2020-05-05 13:07:06
8517
4
原创 《信息学奥赛一本通(C++版)》1057:简单计算器
【题目描述】一个最简单的计算器,支持+,-,×, / 四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。然而:如果出现除数为0的情况,则输出:Divided by zero!如果出现无效的操作符(即不为 +, -, ×, / 之一),则输出:Invalid operator!【输入】输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+...
2020-05-03 22:09:21
2108
2
原创 《信息学奥赛一本通(C++版)》1056:点和正方形的关系
来源:《信息学奥赛一本通(C++版)》测评地址:信息学奥赛一本通在线测评【题目描述】有一个正方形,四个角的坐标(x,y)分别是(1,-1),(1,1),(-1,-1),(-1,1),x是横轴,y是纵轴。写一个程序,判断一个给定的点是否在这个正方形内(包括正方形边界)。如果点在正方形内,则输出yes,否则输出no。【输入】输入一行,包括两个整数x、y,以一个空格分开,表示坐标(x,y)。...
2020-05-03 18:25:09
2160
1
【虚拟化技术】VMware Workstation Player 15.5.1安装指南:桌面虚拟化应用详细步骤说明
2025-07-12
免安装 mingw64(C++,C 语言编译器)
2024-08-29
JFE and GCC.zip
2020-05-12
VC6.0FontSet.zip
2020-05-13
我的世界 Minecraft (2D) 1.0版.sb3
2020-04-25
Scratch minecraft 2D.sb2
2020-04-28
NOIP-Junior.rar
2021-07-20
Visual C++ 6.0 软件补丁.zip
2020-06-21
城通网盘安装包ctfile.exe
2020-04-28
Django + uwsgi 报错(详细错误信息)
2022-03-13
Semantic UI 怎么往下拉框里添加元素?
2022-01-11
为什么一用正则表达式就报错啊?
2022-01-11
油猴 JavaScript 脚本如何实现跳过回答
2021-09-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人