自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

理工大猪猪的博客

理工大猪猪的博客

  • 博客(131)
  • 收藏
  • 关注

原创 Acwing789. 数的范围

给定一个按照升序排列的长度为 n 的整数数组,以及 q 个查询。对于每个查询,返回一个元素 k 的起始位置和终止位置(位置从 00 开始计数)。如果数组中不存在该元素,则返回-1 -1。

2023-08-04 10:21:43 290

原创 Acwing4908. 饥饿的牛

贝茜是一头饥饿的牛。每天晚上,如果牛棚中还有干草的话,贝茜都会吃掉其中的一捆。初始时,牛棚中没有干草。为了让贝茜不被饿死,农夫约翰制定了 N 个给贝茜送干草的计划。其中第 i 个计划是在第 di 天的白天给贝茜送去 bi 捆干草。这些计划互不冲突,保证 1≤d1<d2<…<dN≤T。请你计算,贝茜在第 1∼T 天中有多少天有干草吃。

2023-08-01 10:51:28 259

原创 Acwing122. 糖果传递

接下来 n 行,每行一个整数 a[i],表示第 i 个小朋友初始得到的糖果的颗数。有 n 个小朋友坐成一圈,每人有 a[i] 个糖果。第一行输入一个正整数 n,表示小朋友的个数。求使所有人获得均等糖果的最小代价。每人每次传递一个糖果代价为 1。每人只能给左右两人传递糖果。输出一个整数,表示最小代价。

2023-03-27 21:42:53 458 1

原创 Acwing867. 分解质因数

这里有个性质:n中最多只含有一个大于sqrt(n)的因子。证明通过反证法:如果有两个大于sqrt(n)的因子,那么相乘会大于n,矛盾。于是我们发现最多只有一个大于sqrt(n)的因子,对其进行优化。对于每个正整数 ai,按照从小到大的顺序输出其分解质因数后,每个质因数的底数和指数,每个底数和指数占一行。给定 n 个正整数 a,将每个数分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。最后如果n还是>1,说明这就是大于sqrt(n)的唯一质因子,输出即可。第一行包含整数 n。

2023-03-27 19:47:27 197

原创 Acwing3792. 质数问题

给定两个整数 n 和 k,请你判断在 [2,n] 的范围内是否存在不少于 k 个质数,满足可以表示为两个相邻质数与 1 的和。例如,19 满足条件,因为 19=7+11+119=7+11+1。每组数据输出占一行,如果存在不少于 k 个质数满足条件则输出。第一行包含整数 T,表示共有 T 组测试数据。每组数据占一行,包含两个整数 n 和 k。

2023-03-20 20:46:04 79

原创 Acwing1221. 四平方和(三次循环优化)

暴力第一个数时,因为i

2023-02-22 11:27:43 340

原创 Acwing798. 差分矩阵

输入一个 n 行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1) 和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。始终要记得,a数组是b数组的前缀和数组,比如对b数组的b[i][j]的修改,会影响到a数组中从a[i][j]及往后的每一个数。使得a数组中a[i][j]是b数组左上角(1,1)到右下角(i,j)所包围矩形元素的和。a[][]数组是b[][]数组的前缀和数组,那么b[][]是a[][]的差分数组。原数组: a[i][j]

2023-02-20 16:41:25 274

原创 Acwing99. 激光炸弹(二维前缀和的应用)

接下来 N 行,每行输入一组数据,每组数据包括三个整数 Xi,Yi,Wi,分别代表目标的 x 坐标,y 坐标和价值,数据用空格隔开。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个正方形的边必须和 x,y 轴平行。第一行输入正整数 N 和 R,分别代表地图上的目标数目和正方形包含的横纵位置数量,数据用空格隔开。地图上有 N 个目标,用整数 Xi,Yi 表示目标在地图上的位置,每个目标都有一个价值 Wi。现在有一种新型的激光炸弹,可以摧毁一个包含 R×R 个位置的正方形内的所有目标。

2023-02-17 16:56:08 160

原创 Acwing3956. 截断数组(状态传递方程,前缀和)

其实核心就是找两个点,一次枚举即可,前提是(sum % 3 == 0)第一次找一个和为sum / 3的点,第二次找一个和为sum / 3 * 2的点。所有测试点满足 1≤n≤10^5,−10000≤ai≤10000。给定一个长度为 n 的数组 a1,a2,…第二行包含 n 个整数 a1,a2,…现在,要将该数组从中间截断,得到三个。要求,三个子数组内各元素之和都相等。请问,共有多少种不同的截断方法?输出一个整数,表示截断方法数量。前六个测试点满足 1≤n≤10。第一行包含整数 n。

2023-02-16 10:37:19 98

原创 Acwing4655. 重新排序(差分模板题)

原来的和为 6+14=20,重新排列为 (1,4,5,2,3) 后和为 10+14=24,增加了 4。给定一个数组 A 和一些查询 Li,Ri,求数组中第 Li 至第 Ri 个元素之和。第二行包含 n 个整数 A1,A2,⋅⋅⋅,An,相邻两个整数之间用一个空格分隔。对于所有评测用例,1≤n,m≤10^5,1≤Ai≤10^6,1≤Li≤Ri≤n。接下来 m 行,每行包含两个整数 Li、Ri,相邻两个整数之间用一个空格分隔。对于 50% 的评测用例,n,m≤500;对于 30% 的评测用例,n,m≤50;

2023-01-28 18:37:32 535

原创 python实现问卷星自动填写(可以跳过智能验证)

最近有一个社会实践需要做问卷调查,突发奇想搞一个自动化脚本,省事省米。

2023-01-27 19:10:30 4817 4

原创 Acwing4510. 寻宝!大冒险!(数据量小,可以枚举操作)

简单地说,西西艾弗岛绿化图可以视作一个大小为 (L+1)×(L+1) 的 01 矩阵 A,地图左下角(坐标 (0,0)和右上角(坐标 (L,L))分别对应 A[0][0] 和 A[L][L]。最后 (S+1)) 行输入小 P 手中完整的藏宝图,其中第 i 行(0≤i≤S)包含空格分隔的 (S+1) 个 0 和 1,表示 B[S−i][0]⋯B[S−i][S]。,最先输入的是 B[S][0]⋯B[S][S] 一行,B[0][0]⋯B[0][S] 一行最后输入。

2023-01-26 10:51:45 788

原创 Acwing4729. 解密

给定一个正整数 k,有 k 次询问,每次给定三个正整数 ni,ei,di,求两个正整数 pi,qi,使 ni=pi×qi,ei×di=(pi−1)(qi−1)+1。保证对于 100% 的数据,1≤k≤10^5,对于任意的 1≤i≤k,1≤ni≤10^18,1≤ei×di≤10^18,1≤m≤10^9。接下来 k 行,第 i 行三个正整数 ni,di,ei。输出 k 行,每行两个正整数 pi,qi 表示答案。第一行一个正整数 k,表示有 k 次询问。为使输出统一,你应当保证 pi≤qi。

2023-01-25 11:48:49 275

原创 Acwing4728. 乘方(模拟)

在大多数机器上,int 类型能表示的最大数为 2^31−1,因此只要计算结果超过这个数,她的程序就会出现错误。因此她希望你在 ab 的值超过 10^9 时,输出一个 -1 进行警示,否则就输出正确的 ab 的值。ab 即 b 个 a 相乘的值,例如 23 即为 3 个 2 相乘,结果为 2×2×2=8。输出共一行,如果 ab 的值不超过 10^9,则输出 ab 的值,否则输出 -1。对于 60%60% 的数据,保证 b≤30,ab≤1018。对于 100%100% 的数据,保证 1≤a,b≤10^9。

2023-01-19 14:35:25 579

原创 Acwing4509. 归一化处理(第二十六次CSP认证)

这道题比较好理解,没有太多难的概念,按照步骤一步一步的算就行,只需要记得精度控制好就行

2023-01-18 14:50:10 123

原创 GO语言配置和基础语法应用(三)

C语言是直接影响Go语言设计的语言之一。Go是一门编译型语言,Go语言的工具链将源代码及其依赖转换成计算机的机器指令(译注:静态编译)。Go语言的代码通过(package)组织,包类似于其它语言里的库(libraries)或者模块(modules)。一个包由位于单个目录下的一个或多个.go源代码文件组成,目录定义包的作用。每个源文件都以一条package声明语句开始,这个例子里就是,表示该文件属于哪个包,紧跟着一系列导入(import)的包,之后是存储在这个文件里的程序语句。main比较特殊。

2023-01-16 00:27:27 423

原创 Acwing4699. 如此编码

已知某次测验包含 nn 道单项选择题,其中第 i 题(1≤i≤n)有 ai 个选项,正确选项为 bi,满足 ai≥2 且 0≤bi

2023-01-15 11:49:49 706

原创 Acwing4700. 何以包邮?(DP,01背包)

考虑到预算有限,在最终付款前小 P 决定再从购物车中删去几本书(也可以不删),使得剩余图书的价格总和 m 在满足包邮条件(m≥x)的前提下最小。接下来输入 n 行,其中第 i 行(1≤i≤n)仅包含一个正整数 ai,表示购物车中第 i 本书的价格。一番浏览后,小 P 初步筛选出 n 本书加入购物车中,其中第 i 本(1≤i≤n)的价格为 ai 元。全部的测试数据满足:n≤30,每本书的价格 ai≤10^4 且 x≤a1+a2+⋯+an。仅输出一个正整数,表示在满足包邮条件下的最小花费。

2023-01-15 00:07:28 629

原创 GO语言配置和基础语法应用(二)

6.当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )。多行注释也叫块注释,均已以 /* 开头,并以 */ 结尾,且不可以嵌套使用,多行注释一般用于包的文档描述或注释成块的代码片段。

2023-01-14 11:17:47 570

原创 GO语言配置和基础语法应用(一)

一、golang的下载和安装这一步比较简单,直接打开go的官网,点击download即可,个别人打开慢可以用中国的镜像网站,之后访问的速度和下载第三方库的速度会快很多,之后傻瓜式安装一路到底即可。配置环境变量注意:如果是msi安装文件,Go语言的环境变量会自动设置好。我的电脑----右键“属性”----“高级系统设置”-----“环境变量”----“系统变量”现在假设Go安装在C盘跟目录下2、查看是否安装配置成功。使用快捷键win+R键,输入cmd,打开命令行提示符,在命令行输入。

2023-01-14 09:41:46 660

原创 Acwing4652. 纸张尺寸(十三届蓝桥杯C组真题)

在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm×841mm,将 A0 纸沿长边对折后为 A1 纸,大小为 841mm×594mm,在对折的过程中长度直接取下整(实际裁剪时可能有损耗)。输入一行包含一个字符串表示纸张的名称,该名称一定是 A0、A1、A2、A3、A4、A5、A6、A7、A8、A9 之一。输出两行,每行包含一个整数,依次表示长边和短边的长度。将 A1 纸沿长边对折后为 A2 纸,依此类推。输入纸张的名称,请输出纸张的大小。

2023-01-13 22:33:59 236

原创 Acwing4653. 数位排序

例如,2022 排在 409 前面,因为 2022 的数位之和是 6,小于 409 的数位之和 13。又如,66 排在 20222022 前面,因为它们的数位之和相同,而 66 小于 20222022。当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面。给定正整数 n,m,请问对 1 到 n 采用这种方法排序时,排在第 m 个的元素是多少?1 到 13 的排序为:1,10,2,11,3,12,4,13,5,6,7,8,9。对于 30% 的评测用例,1≤m≤n≤300。

2023-01-12 17:12:50 398

原创 Acwing4454. 未初始化警告

出现过,即存在 j

2023-01-12 00:35:31 364

原创 Acwing4644. 求和

则答案就是算∑ni=1ai⋅(sum−ai)2, 除以2是因为ai⋅aj在i和j各计入一次。给定 n 个整数 a1,a2,⋅⋅⋅,an,求它们两两相乘再相加的和,即。ai要乘以除本身外所有元素, 显然可以表示为ai⋅(sum−ai)对于所有评测用例,1≤n≤200000,1≤ai≤1000。对于 30% 的数据,1≤n≤1000,1≤ai≤100。第二行包含 n 个整数 a1,a2,⋅⋅⋅,an。时间复杂度O(n),空间复杂度O(n)输出一个整数 S,表示所求的和。输入的第一行包含一个整数 n。

2023-01-09 09:33:09 356

原创 Acwing4366. 上课睡觉(枚举+约数)

你可以对石子堆进行合并操作,将两个相邻的石子堆合并为一个石子堆,例如,如果 a=[1,2,3,4,5],合并第 2,3 堆石子,则石子堆集合变为 a=[1,5,4,5]。我们希望通过尽可能少的操作,使得石子堆集合中的每堆石子的数量都相同。有 NN 堆石子,每堆的石子数量分别为 a1,a2,…本题一定有解,因为可以将所有石子堆合并为一堆。第一行包含整数 T,表示共有 T 组测试数据。第二行包含 N 个整数 a1,a2,…第三组数据,我们什么都不需要做。请你输出所需的最少操作次数。每组数据第一行包含整数 N。

2023-01-08 17:02:29 201

原创 Python当中的list和Array

在list中的数据类型保存的是数据的存放的地址,简单的说就是指针,并非数据,这样保存一个list就太麻烦了,例如list1= [1,2,3,'a']需要4个指针和四个数据,增加了存储和消耗cpu。通常,Numpy数组中的所有元素的类型都必须相同的,而Python列表中的元素类型是任意的,所以在通用性能方面Numpy数组不及Python列表,但在科学计算中,可以省掉很多循环语句,代码使用方面比Python列表简单的多。a.列表list中的元素的数据类型可以不一样。数组array里的元素的数据类型必须一样;

2023-01-07 18:19:39 1698

原创 Acwing4261. 孤独的照片

遍历整个字符串,对于每一个位置处的字母,分别处理一下,l[i]和r[i],即为左右两边分别有几个与自身不一样的连续的字母,例如对于某一点i处的任意字母,分上图三种情况再遍历一次计算符合条件的数量最后累加起来就是最终的答案。然而,他不想拍摄这样的照片,其中只有一头牛的品种是更赛牛,或者只有一头牛的品种是荷斯坦牛——他认为这头奇特的牛会感到孤立和不自然。在为每个连续不少于三头奶牛的序列拍摄了一张照片后,他把所有「孤独的」照片,即其中只有一头更赛牛或荷斯坦奶牛的照片,都扔掉了。输入的第一行包含 N。

2023-01-07 09:04:17 525

原创 Acwing4818. 奶牛大学

注意这个问题涉及到的整数可能需要使用 64 位整数型(例如,Java 中的 “long”,C/C++ 中的 “long long”)。输出 Farmer John 可以赚到的最大金额以及最优情况下他应该收取的学费。如果 Farmer John 收费 4,那么 33 头奶牛将会入学,从而使他赚取 3×4=12 的金额。Farmer John 想赚尽可能多的钱,从而可以给他的讲师提供一笔可观的工资。如果这笔学费大于一头奶牛愿意支付的最高金额,那么这头奶牛就不会入学。每头奶牛最多愿意支付 ci 的学费。

2023-01-05 21:54:50 163

原创 Acwing3443. 学分绩点(模拟)

既将学生的实际考分根据不同的学科的不同学分按一定的公式进行计算。北京大学对本科生的成绩施行平均学分绩点制(GPA)。第二行,相应课程的学分(两个学分间用空格隔开);输出有一行,总评绩点,精确到小数点后。第三行,对应课程的实际得分;此处输入的所有数字均为整数。现要求你编写程序求出某人。所有学科学分绩点之和。的总评绩点(GPA)。

2023-01-05 09:46:08 111

原创 Acwing3400. 统计次数(暴力枚举)

个正整数的十进制表示中。输出一个整数,表示答案。共一行,包含两个整数。

2023-01-05 08:54:43 129

原创 Acwing3588. 排列与二进制

从 n 个不同元素中取出 m(m

2022-11-17 09:54:10 157

原创 Acwing3307. 破纪录者(模拟,枚举,思维)

对于每个测试点,满足 1≤N≤2×10^5 的数据一定不超过 10 组,其余数据则满足 1≤N≤1000。,其中 xx 为组别编号(从 11 开始),yy 为破纪录的天数。第二行包含 N 个整数,其中第 i 个表示 Vi。对于测试样例 3,第一天、第三天和第六天破了纪录。第一行包含整数 T,表示共有 T 组测试数据。对于测试样例 1,第二天和第四天破了纪录。对于测试样例 2,只有最后一天破了纪录。每组数据输出一个结果,每个结果占一行。请注意,第一天也可以是破纪录的一天。对于测试样例 4,没有一天破了纪录。

2022-08-24 23:21:07 109

原创 Acwing4269. 校庆(哈希表的简单应用)

随后 N 行,每行给出一位校友的身份证号(18 位由数字和大写字母 X 组成的字符串)。题目保证身份证号不重复。如果没有校友来,则在第二行输出最年长的来宾的身份证号。题目保证这样的校友或来宾必是唯一的。然后在第二行输出最年长的校友的身份证号 —— 注意身份证第 7−14 位给出的是。现在需要请你编写程序,根据来参加校庆的所有人士的身份证号,统计来了多少校友。随后 M 行,每行给出一位人士的身份证号。题目保证身份证号不重复。为了准备校庆,校友会收集了所有校友的身份证号。首先在第一行输出参加校庆的校友的人数。

2022-08-24 12:20:15 97

原创 Acwing2074. 倒计数

如果一个连续的子数组的长度为 m,并且按顺序包含整数 m,m−1,m−2,…,2,1,则称它为 m 倒计数。,其中 xx 为组别编号(从 11 开始),yy 为 KK 倒计数的数量。第二行包含 N 个整数,其中第 i 个表示 Ai。请帮助艾弗里计算她的数组中有多少个 K 倒计数。第一行包含整数 T,表示共有 T 组测试数据。对于每组数据,第一行包含两个整数 N 和 K。例如,[3,2,1] 是 3 倒计数。每组数据输出一个结果,每个结果占一行。在示例 2 中,没有 2 倒计数。

2022-08-22 17:15:13 69

原创 Acwing3526. 素数(判断素数方法的优化)

输入一个整数 n,要求输出所有从 1 到这个整数之间(不包括 1 和这个整数)个位为 1 的素数,如果没有则输出 −1。每组数据输出占一行,由小到大输出所有满足条件的素数,素数之间单个空格隔开。如果没有则输出 −1。之前的判断方法还是复杂度高了点,数据过了10/11。每组数据占一行,包含一个整数 n。输入最多包含 100 组数据。输入包含多组测试数据。

2022-08-21 22:46:10 130

原创 Acwing3596. a+b(高精度,vector)

3.因为auto是一个占位符,并不是一个他自己的类型,因此不能用于类型转换或其他一些操作,如sizeof和typeid。1.用auto声明的变量必须初始化(auto是根据后面的值来推测这个变量的类型,如果后面没有值,自然会报错)动态扩展并不是在原空间之后续接新空间,而是找到比原来更大的内存空间,将原数据拷贝到新空间,释放原空间。auto的作用就是为了简化变量初始化,如果这个变量有一个很长很长的初始化类型,就可以用auto代替。auto的原理就是根据后面的值,来自己推测前面的类型是什么。...

2022-08-09 21:43:52 104

原创 Acwing3452. 进制转换

写出一个程序,输入一个十六进制的数值字符串,输出该数值的十进制字符串。输入格式输入包含多组测试数据。每组数据占一行,包含一个十六进制的数值字符串。输出格式每组数据输出一行结果,表示给定数值的十进制字符串。数据范围每个输入最多包含 100 组数据。所有答案均在 int 范围内。输入样例:输出样例:...

2022-08-07 15:09:57 127

原创 Acwing3593. 统计单词

结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。(凡是以一个或多个空格隔开的部分就为一个单词)共一行,按顺序输出字符串中每个单词包含的字母的个数。编写一个程序,读入用户输入的,以。字符串长度不超过1000。...

2022-08-02 13:23:09 200

原创 Acwing3715. 最少交换次数(冒泡排序法的模拟思路)

给定一个1∼N的随机排列,要求一次只能交换相邻两个数,那么最少需要交换多少次才可以使数列按照从小到大排列呢?请你求出一个待排序序列的最少交换次数和对应的逆序数列。逆序数列给定n个数1,2,…,n的一个排列a1a2…an,令bi是数i在此排列中的逆序数,换句话说,bi等于该排列中先于i又大于i的那些数的个数。数列b1b2…bn称为排列a1a2…an的逆序数列(inversionsequence)。第一行一个整数N。第二行一个1∼N的排列。...

2022-07-26 23:43:53 850

原创 Acwing785. 快速排序

给定你一个长度为 n 的整数数列。请你使用快速排序对这个数列按照从小到大进行排序。并将排好序的数列按顺序输出。输入格式输入共两行,第一行包含整数 n。第二行包含 n 个整数(所有整数均在 1∼10^9 范围内),表示整个数列。输出格式输出共一行,包含 n 个整数,表示排好序的数列。数据范围1≤n≤100000输入样例:输出样例:...

2022-07-07 20:28:17 105

空空如也

空空如也

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

TA关注的人

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