Viktley
Viktley
全部文章
分类
未归档(4)
题解(8)
归档
标签
去牛客网
登录
/
注册
Viktley的博客
全部文章
(共12篇)
G 空调遥控
题目大意: 给出n个人,每个人有一个温度适应区间[k-a[i],k+a[i]],k表示当前室温,要使其小于等于p,问室温设置那个温度点可以使更多的人适应。 思路: 我们逆向思考一下,那么对于每一个人室温适应的区间就是[a[i]-p,a[i]+p]. 那么考虑差分数组,最后再用一遍前缀和累加取最大...
C++
差分
2021-11-13
0
591
E 分组
题目大意: 有n个人,每个人有一个分类,现在请你将他们分成m个组,顺利安排后最多人数最少。 思路: 首先考虑-1的情况。 一定是不同的声部数大于m,显然怎么分都不可以,输出-1. 对于这种最大值最小,考虑用二分来解。 每次二分出一个mid对于每一个组最多2可以容纳多少个人,如果最后分组数小于m,mi...
C++
二分查找
2021-11-13
0
383
D 优美字符串
题目大意: 给出一串字符,每遇到相邻的字符中间插入一个字符,问插入后字符串的长度。 思路: 直接按要求模拟 #include <iostream> #include <cstdio> using namespace std; int T, cnt; string s;...
C++
2021-11-13
0
791
C 数字匹配
题目大意: 给出x,y,问1~x之间有多少组数两两相同位数超过y(都是指二进制下) 思路: 利用vector存储一下各数二进制的信息,暴力判断即可。 #include <cstdio> #include <iostream> #include <vector> ...
C++
字符串
2021-11-13
0
461
B 跳跳跳
题目大意: 给出n个点组成的环,每个点有一个权值为a[i],每次可以跳到一个未进过的点p,贡献为a[p] * i,问安排一种顺序使得贡献最大。 思路: 不管我们怎么跳,跳过的点都可以看成是一个区间,那我们每次跳跃就可以成是向区间左/右边扩大一格。 设f[i][j]表示区间[i,j]的最大贡献 ...
C++
动态规划
2021-11-13
0
377
A 数字游戏
A 数字游戏 题目大意: 给出一个数x,问需要几次操作使其变为零 思路: 首先预处理出二进制下有多少个一 分类讨论 注释:下面所以表示消掉1都是指除了最低位外的。 如果x是偶数(表示二进制下最低位为0) 如果总共有奇数个一, 那么显然我们消掉除所有的一,每次都是需要最后一位取反,也就是两次操...
C++
数学
2021-11-13
0
516
题解 | #String Game#
题目大意: 给出一个长度为n的字符串,问操作k次后的字符串。 定义一次操作为:将第一个字符放在末尾,其他字符向前移。 思路: Subtask1: 对于10510^5105次操作,我们可以直接选择暴力模拟翻转过程。 Subtask2: 对于这档分数,我们发现题目良心地给出了特殊条件A:x≡0...
2021-10-02
0
573
题解 | #k小数查询#
题目大意: 给出长度为的序列 , 有多少对不同的整数对满足且中第小的数是? 思路: 因为题目规定是一个排列,所以第k小数(设他为x)一定是唯一的(讲了跟没讲一样)考虑预处理出对于x左右两边的比他小的数有多少个,分别记为s[i]对于位置i前面有多少个比x小的数,e[i]表示对于位置i后面有多少个比x小...
2021-08-23
0
584
题解 | #中位数#
题目大意: 有个数,每次操作使两个数删掉,留下它们两个的和,问进过次操作后的最小中位数。 思路: 对于初中数学中位数的定义: 对于一个序列长度为奇数时,中位数为序列升序排序后的第 对于一个序列长度为偶数时,中位数为序列升序排序后的第那我们缩小中位数的大小,那一定是要将序列中小的数尽可能的位于中间的...
2021-08-23
0
512
题解 | #学姐的编码1.0 #
题目大意: 给出一段十六进制的编码,问其中是升序排序的子段有多少个? 思路: 简单的dp问题首先我们可以先将字符’0’ - ‘9’对应数字 0-9然后将字符’A’ - 'F’对应数字10 - 15我们用数组dp[i] 表示以i (上面的字符对应的数字) 为结尾的方案数因为要满足一个单调递增的条件,那...
2021-05-20
0
526
首页
上一页
1
2
下一页
末页