自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 NOIP201206国王游戏

排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。推广到整个排队方案,前面的金币数和a[i],b[i]都会影响后面的答案。左手数字为a[i]和a[i+1],右手数字为b[i]和b[i+1]。那么 w[i+1]=P[i-1]*a[i]/b[i+1]=w[i]*a[i]*b[i]/b[i+1]不难看出,在这个相邻的二元组中,前面的数不受后面的影响,而后面的金币数决定于w[i],a[i],b[i]。

2024-06-25 18:12:47 751

原创 NOIP201310华容道

要将指定块移入目标位置,必须先将空白块移入目标位置,空白块要移动到目标位置,必然是从位置 (2,2) 上与当前图中目标位置上的棋子交换位置,之后能与空白块交换位置的只有当前图中目标位置上的那个棋子,因此目标棋子永远无法走到它的目标位置,游戏无法完成。接下来的 n 行描述一个 n*m 的棋盘,每行有 m 个整数,每两个整数之间用一个空格隔开,每个整数描述棋盘上一个格子的状态,0 表示该格子上的棋子是固定的,1 表示该格子上的棋子可以移动或者该格子是空白的。所以令move[x][y][k][l。

2024-06-03 20:16:11 511

原创 二叉苹果树

描述有一棵二叉苹果树,如果数字有分叉,一定是分两叉,即没有只有一个儿子的节点。这棵树共 N 个节点,标号 1 至 N,树根编号一定为 1。我们用一根树枝两端连接的节点编号描述一根树枝的位置。一棵有四根树枝的苹果树,因为树枝太多了,需要剪枝。但是一些树枝上长有苹果,给定需要保留的树枝数量,求最多能留住多少苹果。输入描述第一行两个数 N 和 Q ,N 表示树的节点数,Q 表示要保留的树枝数量。接下来 N−1 行描述树枝信息,每行三个整数,前两个是它连接的节点的编号,第三个数是这根树枝上苹果数量。

2024-05-17 19:42:33 461

原创 桌面计算机图标名字变了,电脑桌面图标突然变成未知图标怎么回事

就算是重启电脑也没用。1、这种情况一般出现在QQ上面比较多,比如说你接收了一个压缩包文件,在别人那里显示的是压缩包,但是你自己下载好,却是一个空白的文件图标,也不能打开,其实这个是后缀名的问题,我们可以右击文件选择--重命名;2、选择后会弹出软件的属性窗口,在这个窗口中有一个目标和起始位置,你都点击一下,然后在这个地址中输入一下你的这个软件在那个盘的那个文件夹就可以了;2、重命名后,看一下你的压缩包文件,后面显示的是否是RAR结尾,如果不是的话,你就在文件名后面加上.rar这个后缀名就可以正常使用了;

2024-05-10 20:50:32 305

原创 计算机无法验证驱动程序需要,Windows 无法验证此设备所需的驱动程序的数字签名。某软件或硬件最近有所更改,可能安装了签名错误或损毁的文件,或者安装的文件可能是来路不明的恶意软件。(代码52)...

8.进入启动设置界面,有9个不同的选项,我们是进入安全模式,按一下键盘上的F7 1=F1 2=F2 以此类推。6.进入高级选项,里面有系统修复、启动修复、命令提示符、启动设置等,我们选择“启动设置”3.打开更新和安全,左侧的“修复”,点击高级启动中的“立即重启”按钮。由未签名驱动导致的键鼠装无法使用的问题 usb 问题失效.2.疑难解答-->启动-->f7 禁用未签名强制验证.7.进入启动设置界面,点击“重启”按钮,重启计算机。2.打开进入设置界面,找到里面的“更新和安全”

2024-05-10 20:47:01 1945

原创 炮兵阵地

escription司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用"P"表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示:如果在地图中的灰色所标识的平原上部署一支炮兵部队,则图中的黑色的网格表示它能够攻击到的区域:沿横向左右各两格,沿纵向上下各两格。图上其它白色网格均攻击不到。

2024-05-10 20:38:24 447

原创 牧场的安排

描述Farmer John 新买了一块长方形的牧场,这块牧场被划分成 M 行 N 列 (1≤M≤12;1≤N≤12),每一格都是一块正方形的土地。FJ 打算在牧场上的某几格土地里种上美味的草,供他的奶牛们享用。遗憾的是,有些土地相当的贫瘠,不能用来放牧。并且,奶牛们喜欢独占一块草地,于是 FJ 不会选择两块相邻的土地,即:没有哪两块草地有公共边。当然,FJ 还没有决定在哪些土地上种草。作为一个好奇的农场主,FJ 想知道,如果不考虑草地的总块数,那么,一共有多少种种植方案可供他选择。

2024-05-10 20:33:33 446

原创 【入门】兑换硬币

简单的入门题。

2024-05-09 21:01:57 142

原创 【入门】数组元素的排序

描述对数组的元素按从小到大进行排序输入描述有两行 第一行有一个整数n( 5 <= n <= 10 ) 第二行有n个整数输出描述输出更新后的数组用例输入 18用例输出 1。

2024-05-09 19:35:48 250

原创 消防

bool is[N];i;continue;dfs1(v, u);if (p1[u])return;i;continue;dfs3(v, u);int main()int n, s;i < n;i++)dfs1(1, 0);dfs2(root);i <= cnt;i++)i <= cnt;

2024-05-08 20:04:48 322

原创 软件看门狗:让服务永不宕机

在业务处理结束的地方设置一个全局变量,记录完成时间,那么只需要定时检查这个变量是否超过设定限度,比如这个值是10分钟前,说明10分钟内都没有完成任何业务,不妨重启一下(即使是真的没有业务可做,重启一下也没什么大不了,当然可能会恰好错过几个业务,但相比故障几天后找人去重启设备就是很小的损失了)。即使如此,也可能因为各种问题导致占用了非预期的空间,比如文件复制、删除的失败导致遗留文件,所以存储满的情形是一定要考虑的。所有这些问题都是很难解决的,看门狗的思路不是创造无错代码,而是让有错误的代码能够恢复运行。

2024-05-08 20:03:52 404

原创 闲聊:win11很美但不好用

windows上的生产力用户多数是多任务用户,需要在多个应用之间来回操作(典型如复制粘贴)。对于多任务用户,任务切换所需的操作步骤很影响工作效率:不合并按钮时,操作步骤为1次点击,合并按钮时,操作步骤为“点击-寻找-点击”,共3步,所以工作量是300%,效率只有33%。win11真的很美,比如圆角窗口,非常漂亮,默认的配色也非常舒适。但是任务栏真的很令人愤慨。恍惚记得更早的时候,任务栏不仅可以不合并,而且可以用鼠标改变高度。今天看到说法说win11准备恢复任务栏不合并了,这是好事啊,盼了很久了。

2024-05-08 19:56:50 203

原创 c++小游戏

2024-05-08 19:45:18 752

原创 高精度算法(加法)

/转int,存入数组。

2024-05-08 19:37:38 271

原创 动态规划

动态规划(Dynamic Programming):简称DP,是一种求解多阶段决策过程最优化问题的方法。在动态规划中,通过把原问题分解为相对简单的子问题,先求解子问题,再由子问题的解而得到原问题的解。动态规划最早由理查德 · 贝尔曼于 1957 年在其著作「动态规划(Dynamic Programming)」一书中提出。这里的 Programming 并不是编程的意思,而是指一种「表格处理方法」,即将每一步计算的结果存储在表格中,供随后的计算查询使用。

2024-05-07 20:58:23 277 1

原创 栈和指针

例如中缀表达式A + B ∗ ( C − D ) − E / F A+B*(C-D)-E/FA+B∗(C−D)−E/F所对应的后缀表达式为A B C D − ∗ + E F / − ABCD-*+EF/-ABCD−∗+EF/−。如下图则是A + B ∗ ( C − D ) − E / F A+B*(C-D)-E/FA+B∗(C−D)−E/F对应的表达式,它的后序遍历即是表达式A B C D − ∗ + E F / − ABCD-*+EF/-ABCD−∗+EF/−。(2)类型中增设表示元素个数的数据成员。

2024-05-07 20:54:03 286

原创 数组

数组是一种用于存储一组相同数据类型元素的数据结构。在程序中,数组可以存储不同类型的数据,如整数、浮点数、字符等。每个数组元素都有一个唯一的索引,从0开始递增,可以用来访问和修改数组元素。数组在程序中的使用非常广泛,可以用来存储大量的数据,并且可以通过循环等方式进行遍历和操作。举个例子,如果你需要存储一组学生的成绩,你可以定义一个包含学生人数的数组,然后依次输入每个学生的成绩,并将其存储到数组中。这样,你就可以通过数组下标来访问每个学生的成绩了。

2024-05-07 20:51:43 403

原创 最小堆 排序 k大数

最小堆是一种数据结构,它可以用来维护一组数据中的最小值。在最小堆中,任意一个节点的值都小于其子节点的值,因此堆顶元素是整个堆中的最小值。最小堆排序就是使用最小堆来对一组数据进行排序的算法。具体来说,就是将这组数据依次插入到一个空的最小堆中,然后依次弹出堆顶元素,直到堆为空。这样得到的序列就是按照从小到大的顺序排列的。具体做法是先取前k个数建立一个大小为k的最小堆,然后对于后面的n-k个数,如果它比堆顶元素大,就将堆顶元素弹出并将该数插入到堆中。最终堆中剩下的k个数就是原序列中最大的k个数。

2024-05-07 20:45:50 282

原创 CSP202003函数调用

描述函数是各种编程语言中一项重要的概念,借助函数,我们总可以将复杂的任务分解成一个个相对简单的子任务,直到细化为十分简单的基础操作,从而使代码的组织更加严密、更加有条理。然而,过多的函数调用也会导致额外的开销,影响程序的运行效率。某数据库应用程序提供了若干函数用以维护数据。输入描述第一行一个正整数 n,表示数据的个数。第二行 n 个整数,第 i 个整数表示下标为 i 的数据的初始值为 ai​。第三行一个正整数 m,表示数据库应用程序提供的函数个数。函数从 1∼m 编号。输出描述。

2024-05-07 20:41:18 537

原创 NOIP202004微信步数(重置)

好复制。

2024-05-07 20:36:00 262

原创 Hello,World!

最最经典的一道题。

2024-05-07 20:32:42 377

原创 对齐输出

比如读入三个整数,按每个整数占8个字符的宽度,右对齐输出它们,按照格式要求依次输出三个整数,之间以一个空格分开。

2024-05-07 20:28:40 125

原创 NOIP202004微信步数

他的计划非常简单,每天按照事先规定好的路线行进,每天的路线由 n 步移动构成,每一步可以用 ci​ 与 di​ 表示:若他当前位于 (a1​,a2​,…,ak​),则这一步他将会走到 (a1​,a2​,…从 (1,1) 出发将走 2 步,从 (1,2) 出发将走 4 步,从 (1,3) 出发将走 4 步。从 (2,1) 出发将走 2 步,从 (2,2) 出发将走 3 步,从 (2,3) 出发将走 3 步。从 (3,1) 出发将走 1 步,从 (3,2) 出发将走 1 步,从 (3,3) 出发将走 1 步。

2024-05-07 20:25:39 330

原创 NOIP202004微信步数

aci​​+di​,…,ak​),其中 1≤ci​≤k,di​∈{−1,1}。,ak​) 来表示其位置。从 (1,1) 出发将走 2 步,从 (1,2) 出发将走 4 步,从 (1,3) 出发将走 4 步。从 (2,1) 出发将走 2 步,从 (2,2) 出发将走 3 步,从 (2,3) 出发将走 3 步。从 (3,1) 出发将走 1 步,从 (3,2) 出发将走 1 步,从 (3,3) 出发将走 1 步。对于所有测试点,保证 1≤n≤5×105,1≤k≤10,1≤wi​≤109,di​∈{−1,1}。

2024-05-07 20:21:51 534

原创 诗人小G

描述小 G 是一个出色的诗人,经常作诗自娱自乐。但是,他一直被一件事情所困扰,那就是诗的排版问题。一首诗包含了若干个句子,对于一些连续的短句,可以将它们用空格隔开并放在一行中,注意一行中可以放的句子数目是没有限制的。小 G 给每首诗定义了一个行标准长度(行的长度为一行中符号的总个数),他希望排版后每行的长度都和行标准长度相差不远。显然排版时,不应改变原有的句子顺序,并且小 G 不允许把一个句子分在两行或者更多的行内。

2024-05-07 20:17:53 665

原创 NOIP201008引水入城

支持亿下吧!return;return;return;return;return;return;int main()i <= n;i++)j <= m;j++)i <= m;i++)dfs1(1,i);i <= m;i++)ans++;if (ans)return 0;i <= m;i++)

2024-05-07 20:07:22 433

原创 NOIP201007关押罪犯

/将数据按照矛盾值从大到小排序。//如果 x和 y在同一座监狱,证明无法再继续优化分配了。//特殊情况:没有任何冲突事件。//那么此时这对的矛盾值就是 Z市长看到的最大矛盾值。//以矛盾值作为判断依据,为下面的排序做准备。//因为前面矛盾值大的都已经优化分配了。//敌人的敌人是朋友。老样子,不多说上代码。//用结构体储存数据。

2024-05-07 20:02:17 255

原创 [USACO06NOV] Round Numbers S

j++)//为什么不是(i+1)/2呢,是因为从全局来看统计cnt1出现的次数,如果是(i+1)那么就考虑后面了。//分别记录0和1的个数。//f[i][j][k]表示i个数字下j开头的一个k个1的方案数。//是一个正整数,所以不需要考虑0。//首先考虑前导零的情况。

2024-05-07 19:55:41 402

原创 花神的数论题

n是小于1e15的,所以n的二进制位也不会超过70,所以说1~n中的所有数含有1的个数是1~70,所以对于k属于区间[1,70],我们可以用数位DP求出二进制数中含有1的个数为k的数的数目sum,这样k的贡献就是sum个k连乘,也就是k的sum次方,这样我们枚举每一个二进制表示中可能含有的1的个数就可以得到最终的贡献,而求每一个二进制表示中可能含有的1的个数就是一个基本的数位DP,我们只需要在数位DP过程中记录当前已经出现多少个1以及最后需要出现多少个1即可。

2024-05-07 19:53:31 362

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除