题目笔记
文章平均质量分 64
INGg__
双非ACM打铁选手,数据科学与大数据专业在读
展开
-
CF1367D 构造
题意给定一个字符串s,给定一个长度为m的数列b要求从s中取出 m 个字符构成一个新的字符串a(不可重复取相同位置的字符),任意排列后,是其满足对于每一个 i 都有 a[i] 到 a 中 所有比它大的(即字典序比它大,如 b > a,z > x )的字符在字符串 a 中的距离之和为 b[i]来源:洛谷题解首先题目保证有解其次按照题目给定的定义来看,b中一定会有至少一个数字是0,因为在字符串s中一定存在这样一个字符是字典序最大的导致其他的字母没有办法与他坐距离定计算那么根据这一条,原创 2022-05-01 11:20:12 · 170 阅读 · 0 评论 -
代码源849 国家铁路
题意题解这个题一开始没有思路,看了看dls讲解感觉好厉害我们先分析这个式子,这个式子带有绝对值,在图上的情况只有两种,左下角到右上角,右下角到左上角那么我们分情况化简式子会发现我们如果固定一个点,找到这个点的另一半区域的最小值来计算就可以了以左边的情况为例,利用前缀和思想,维护s[i][j]s[i][j]s[i][j]代表以i和j为右下角的ai,j−c∗(i+j)a_{i,j}-c*(i+j)ai,j−c∗(i+j)的最小值这样对于每一个点就只需要计算一遍即可,时间复杂度由暴力的O(n原创 2022-04-29 11:59:22 · 217 阅读 · 0 评论 -
P1095 [NOIP2007 普及组] 守望者的逃离
呜呜dp菜鸡终于自己独立做出来一道黄题dp呜呜上午英语课就在上面想方程推方程,果然推的没错呜呜前排提示,本方法纯硬dp,不带其他题解的分析用哪种方法更优,而且如果不开o2,会t两个点现在大学生比赛应该都开o2的吧P1095 [NOIP2007 普及组] 守望者的逃离状态表示:f[i][j]f[i][j]f[i][j]表示在iii时间内,还剩jjj点法力值所走的最远距离是多少状态计算:注意,我设还剩j点法力值,所以当前的状态是f[i][j]f[i][j]f[i][j]的转移的时候应当注意原创 2022-04-21 15:32:56 · 457 阅读 · 2 评论 -
Codeforces Round #634 (Div. 3)
C - Two Teams Composing题意给定一组数,选择一些数将其数量相等的两个组,其中一个元素必须相同,另一个元素必须不同问能分出来的最大的两个数组的长度是多少题解这题一开始想的是二分,本质上这道题是可以二分的,但是我的二分好像考虑的东西有点少,wa2在了400多个点上,转而还是写结论贪心我们发现,如果数的种类数和最多那个数的个数相等的话,就说明我们得从最多的那个数中拿出来一个给数组为全不相等的那个,比如1 1 1 2 3,那么我们可以舍弃掉一个最多的数,让其能够组成1 1; 2 3原创 2022-04-07 17:13:56 · 844 阅读 · 0 评论 -
Codeforces Round #780 (Div. 3)
B - Vlad and Candies题意给定一个数组,每次只能取最大的元素,要求每次取的相邻的元素不能相等,问能否取完题解我们知道,当最大值比最大值多2的时候,这个时候拿掉一个最大值,接下来就没得选了当最大值比最大值的差距小于等于1的时候,我们可以这两个值轮流来拿,使得其依次变小,这时候我们就能同时使这些数来变小,到与其他数相同的时候我们还可以选择其他数来变小,这样循环下去,我们就能使所有的数一起变为0Codevoid solve(){ cin >> n; fo原创 2022-04-02 00:17:31 · 1310 阅读 · 0 评论 -
Codeforces Round #610 (Div. 2)
呜呜这场好难A - Temporarily unavailable题意给定一个数轴,一个人从a点走到b点,c点有一个基站,覆盖半径是r,问这个人在走的过程中有多长时间没有信号这个人的速度为1单位/分钟题解我们确定在[a,b][a,b][a,b]区间内有多长的区间是有信号的,那么信号的起点就是max(a,c−r)max(a,c-r)max(a,c−r),这里假设a≤ba\leq ba≤b,那么同理,信号的终点就是min(b,c+r)min(b,c+r)min(b,c+r)那么没有覆盖到的区间就原创 2022-03-31 19:28:41 · 1482 阅读 · 0 评论 -
Codeforces Round #623
A - Dead Pixel题意分辨率为a*b的屏幕上在x,y这个点上出现了坏点,问能展示的最大面积是多少题解像素坐标是从0开始的,为了好算我们直接从1开始算围绕这个点所不在的四个区域内输出最大的就行Codell a, b, x, y;void solve(){ cin >> a >> b >> x >> y; x++, y++; cout << max({(y - 1) * a, (x - 1) * b,原创 2022-03-30 16:23:37 · 1309 阅读 · 0 评论 -
Codeforces Round #779 (Div. 2)
A - Marin and Photoshoot题意给定01串,使得任意区间内,0的个数不超过1的个数题解每两个0之间至少要有2个1Codeint n;string s;void solve(){ cin >> n; cin >> s; int cnt = 0; for (int i = 1; i < n; i++){ if (s[i] == '0' && s[i - 1] == '0')原创 2022-03-29 00:07:28 · 1297 阅读 · 4 评论 -
CodeTON Round 1 (Div. 1 + Div. 2, Rated, Prizes)
A - Good Pairs题意找一个数对满足题目所给的公式输出下标题解输出最大值和最小值的下标就行了,因为本质上就是这个点到两端的距离之和Codeint T;int n;PII a[N];void solve(){ cin >> n; for (int i = 1; i <= n; i++){ cin >> a[i].x; a[i].y = i; } sort(a + 1, a + 1 +原创 2022-03-27 15:21:14 · 381 阅读 · 0 评论 -
Educational Codeforces Round 125 (Rated for Div. 2)
A - Integer Moves题意给定一组坐标,采用每次只能移动整数个单位,问需要花多少步走到该点上去题解当已经在这个点上的时候,我们不需要走当两点距离已经为整数的时候,我们可以走一步否则,我们可以走两步,可以用三角形的两边之和大于第三边来解释,我们到达那个点,一定可以构造两个整数使得从00出发到那个点为两个整数Codeint T;int x, y;void solve(){ cin >> x >> y; int t = sqrt(x * x原创 2022-03-23 18:08:16 · 1920 阅读 · 0 评论 -
Codeforces Round #778
A - Maximum Cake Tastiness题意给定一个长度为n的蛋糕序列,定义美味值为其中两个相邻的蛋糕美味值的和的最大值可以进行一次子串翻转操作,问最后最大的美味值是多少题解我们很容易发现,最大值让两个最大的在一起就行了,翻转子串也很容易得到最大值在一起,所以直接输出两个最大值相加就行了Codeint n;int a[N];void solve(){ cin >> n; for (int i = 1; i <= n; i++){原创 2022-03-23 17:42:38 · 1202 阅读 · 0 评论 -
Codeforces Round #776 (Div. 3)
A - Deletions of Two Adjacent Letters题意每次选择任意两个相邻的两个字符删除,问最后是否能得到给定的字符题解我们发现,因为每次都是选择两个相邻的字符,那么我们想要保留下来的答案的两端绝对不能出现奇数长度,也就是说,这个字符必须在对应下标的奇数位上(下标从1开始)那么我们只需要看看原串的奇数位中有没有出现我们想要的字符就可以了Code#include <iostream>#include <cstdio>#include <a原创 2022-03-13 17:59:59 · 1826 阅读 · 0 评论 -
Educational Codeforces Round 122 (Rated for Div. 2)
A - Div. 7题意更改更少的数字使其原本的数字变为7的倍数题解因为7小于10,所以说,10个以内一定会有至少有一个7的倍数所以说只需要更改最后一位就行了题目要求如果已经是7的倍数就直接输出,这里要注意一下Code#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>#include <m原创 2022-03-07 23:41:50 · 477 阅读 · 0 评论 -
牛客xb月赛45题解
csdn小白是屏蔽词,醉了A - 悬崖题意给定两墙之间的距离和每次跳跃的长度(注意不是高度),每次墙都要缩短1m,问跳跃长度为多少注意跳不过去也是跳了题解判断一下跳不过去的情况,然后其他情况输出n∗xn*xn∗x即可Code#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>#include &l原创 2022-03-07 23:41:36 · 519 阅读 · 0 评论 -
Codeforces Round #774 (Div. 2)
这几次比赛真的拉胯,我也不知道什么原因,也有可能是好久不写题解了吗,以前每次写完题目都会补一份自己的理解,也许是最近对题目的二次思考少了吗?也可能是学习方法不对,该加练了A - Square Counting题意一个长度为n+1的数组,这个数组中的元素可以取值为0≤ai<n or ai=n20\leq a_i < n \;or\;a_i=n^20≤ai<norai=n2,使得这些数加起来最后为sss,问在这些数中有多少的数为n2n^2n2题解完善官方题解我们模仿余数原创 2022-03-06 01:01:19 · 111 阅读 · 0 评论 -
CF1547E Air Conditioners
这道题看了几篇题解,也感到学到了一些知识题意先说题意长度为 n 的一个一维的空间直线中,给定 k 个空调,同时给定其位置与设定的温度。问每一个格的温度分别是多少。温度计算公式:min1≤j≤k(tj+∣aj−i∣),\min_{1 \le j \le k}(t_j + |a_j - i|),1≤j≤kmin(tj+∣aj−i∣),就是所有空调设定的温度加上到这个点的距离的最小值就是这个点的温度做法首先第一个做法我觉得是适用性最高的,也同时能够对应好我前段时间简单学的多源BFS原创 2021-09-01 19:24:45 · 186 阅读 · 0 评论 -
Deltix Round, Summer 2021 (open for everyone, rated, Div. 1 + Div. 2)
A - A Variety of Operations题意给定两个数a、b,初始都是0,能做以下操作:同时 +ka+k, b-ka-k, b+k问能经过几次操作能使ab变为c和d题解我们知道,因为两个数一开始都是0,如果同时增加k的话,那么肯定就不会使得两个数之间的差变小,所以只能靠后两个步骤来进行那么一个数+k,另一个数-k,也就是说两个数的差变为了 2k。我们知道 2k 一定是偶数,所以,如果c d 两个数的差是奇数,那么一定变不出来那么因为k是任意数,我们只需要把两个数进行一次原创 2021-08-31 20:35:06 · 599 阅读 · 0 评论 -
2021ccpc网络赛 Command Sequence
Command Sequence题意一个机器人能上下左右移动。给定一个移动的字符串,问有多少的子串可以使其按照子串的顺序来走能回到原点题解我打眼望过去,这本质上就是两种类型的括号匹配,要两种括号要同时匹配成功比赛的时候讨论好解法时,当发来一个片段的时候:到最后也没优化出来#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#inc原创 2021-08-29 21:53:11 · 631 阅读 · 0 评论 -
Codeforces Round #740 (Div. 2) A C
A - Simply Strange Sort题意给你定义一个 f 操作,f(i) 为如果ai>ai+1a_i>a_{i+1}ai>ai+1就交换两个数然后给定操作 i,如果 i 是奇数则对所有的奇数下标的数都做f操作;如果 i 是偶数对所有的偶数下标都做 f 操作n为奇数给定数列为n的全排列问多少次操作会使得数列递增题解一开始还以为是什么根据这个数所在的位置和应该所在的位置的,结果估摸一下数据范围,应该可以暴力Code#include <iostream&g原创 2021-08-25 02:05:51 · 232 阅读 · 1 评论 -
Codeforces Round #739 (Div. 3)
赛后研究了两个小时的被hack的代码,都没看懂人家怎么能hack掉的qwqABC直接放代码了,应该很好理解A - Dislike of Threes// Problem: A. Dislike of Threes// Contest: Codeforces - Codeforces Round #739 (Div. 3)// URL: https://codeforces.com/contest/1560/problem/A// Memory Limit: 256 MB// Time Lim原创 2021-08-20 02:12:46 · 271 阅读 · 0 评论 -
Codeforces Round #738 (Div. 2)
北航出的手速场(qwqA - Mocha and Math题意This day, Mocha got a sequence aa of length n. In each operation, she can select an arbitrary interval [l,r] and for all values i (0≤i≤r−l), replace al+i with al+i&ar−i at the same time, where && denotes the原创 2021-08-16 16:55:18 · 466 阅读 · 0 评论 -
Codeforces Round #737 (Div. 2) A B
反思b题做出来了但是一直在测随机数样例,耽误了一段时间,总体来说这次还行吧qwqA - Ezzat and Two Subsequences题意一个数组分成两部分,问两部分的平均值加和最大是多少题解把最大的一个数单独拿出来作为一组,其他的作为一组这里不严谨的证明一下:平均数肯定是数越多除数越大,但是一定不会等于最大的那个数(只有一个的时候除外)但是只要是往里面加数就不如让单独的一个数成为一组对答案的贡献最大那么只能分成两组,别让最大的那个数被其他的数给拖累了就好了Code// Pro原创 2021-08-10 15:23:58 · 389 阅读 · 0 评论 -
第十一届山东省大学生程序设计竞赛
省赛结束了意味上半年的比赛基本上也算告一段落了,这场比赛也让我见识到了很多选手队伍在比赛中的队友之间的相互协作,互相鼓励,互相纠正;也发现了很多自己的不足:思维能力不够,算法应用不准确,刷题数量远远不够等很多情况,还有与队友合作间一些思维的激烈碰撞等等情况。为了更好的备战以后的比赛,以后每场cf无特殊情况每场都打每场都补,保证每日一题,如果实在没时间也要保证每日一道简单的cf a;暑假前基础算法模版掌握牢固,暑假进击提高;蓝桥杯国赛还有一个月,这个月内对暴力暴搜DP进行集中特训。希望下半年能取得一个好成绩吧原创 2021-08-06 23:49:44 · 655 阅读 · 1 评论 -
Codeforces Global Round 15
文章目录[A - Subsequence Permutation](https://codeforces.com/contest/1552/problem/A)题意题解Code[B - Running for Gold](https://codeforces.com/contest/1552/problem/B)题意题解Code[C - Maximize the Intersections](https://codeforces.com/contest/1552/problem/C)题意思路CodeD 待补原创 2021-08-03 23:50:23 · 321 阅读 · 1 评论 -
Codeforces Round #735 (Div. 2)
文章目录[A Cherry](https://codeforces.com/contest/1554/problem/A)题意题解Code[B Cobb](https://codeforces.com/contest/1554/problem/B)题意题解Code[C Mikasa](https://codeforces.com/contest/1554/problem/C)题意题解Code[D Diane](https://codeforces.com/contest/1554/problem/D)题意题原创 2021-08-01 16:37:41 · 842 阅读 · 5 评论 -
ICPC训练联盟2021暑期训练赛第二场 A / G
文章目录反思[A Retribution!](https://ac.nowcoder.com/acm/contest/18453/A)[G Out of Sorts](https://ac.nowcoder.com/acm/contest/18453/G)反思题目非常长,题意很简单,数据没想到,打都不敢打A Retribution!学习了一下标程的代码,实现方式又学了一种新的#include <iostream>#include <cstdio>#include <原创 2021-07-22 20:30:45 · 267 阅读 · 0 评论 -
2021牛客暑期多校训练营2 C\D\K
文章目录[C Draw Grids](https://ac.nowcoder.com/acm/contest/11253/C)题意题解Code[D Er Ba Game](https://ac.nowcoder.com/acm/contest/11253/D)题意题解Code[K Stack](https://ac.nowcoder.com/acm/contest/11253/K)题意题解C Draw Grids题意两个人按顺序在点阵上画长度为1的线,不能斜着画。问当没有封闭图形的时候,最后一画是第一原创 2021-07-22 10:40:24 · 338 阅读 · 0 评论 -
ICPC训练联盟2021暑期训练赛第一场
A Briefcases Full of Money题意:问你不同面额的钱有好多张,问同一面额的最多的钱是多少,如果钱数相等输出张数最少的没啥说的,直接模拟#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>#include <map>#define ll long long#defin原创 2021-07-21 15:47:32 · 196 阅读 · 1 评论 -
NOIP2012 国王游戏
经典的贪心题目(论如何做一个好贪逼qwq)# Problem: 国王游戏# Contest: AcWing# URL: https://www.acwing.com/problem/content/116/# Memory Limit: 64 MB# Time Limit: 1000 ms# Code by: ING__## Powered by CP Editor (https://cpeditor.org)n = int(input())shou = []_ = input原创 2021-07-17 11:19:03 · 166 阅读 · 0 评论 -
第十二届蓝桥杯c++ b组国赛暴力解法
前言刚考完试现在可算有时间可以把这个坑填上了呜呜。不过由于比赛时间距现在有一点长了,我无法保证跟当时完全一样,但是我能保证思路大体是一样的qwq。然后代码下面的我大部分值测了样例,没有测试oj收录(也可能是我没有找到有这道题的OJ),我就只测试了样例。下面的我也只打了我会做的。文章目录前言填空题A 带宽反思题解B 纯质数反思题解C 完全日期反思题解编程题E 大写反思题解F 123反思题解G 异或变换反思题解H 二进制问题反思题解I 翻转括号序列填空题A 带宽反思这道题这个转换其实我看了众原创 2021-07-16 08:56:45 · 538 阅读 · 0 评论 -
PTA 7-2 学术会议地点统计问题-hebust (10 分) JAVA
学术会议地点统计问题秘书统计张教授【以后简称 z 】和王教授【以后简称 w 】上一年度参加学术会议的情况,教授详细行程清单如下:z:bj 3,hz 2,qd 4,nj 5,wh 3,bj 3w:hn 7,xm 6,bj 4,gz 6,wh 4现在秘书需要完成以下统计工作。 找出两位教授共同去过的城市,并找出住宿天数长的教授,按照如下格式输出:z:bj 6,w:wh 4请同学们编写代码帮助搞定。输入格式:固定为2行【数据说明】冒号前面为教授简称,冒号后面为会议详情,分组内使用空格分开,左边.原创 2021-07-07 17:25:12 · 502 阅读 · 0 评论 -
PTA 7-4 学生Map (20 分) JAVA
编写学生类,包含学号no、姓名name、成绩score,提供必要的构造函数、toString函数和equals/hashcode函数,其中,toString函数的格式为“no:xxx name:xxx score:xxx”,no参与equals和hashcode的计算 在main函数中构造一个Map容器存放学生对象 从命令行输入多个学生对象,存入Map中,其中key为学号,value为学生对象。 从命令行中读入在学生集合上的操作,具体操作包含: add 添加一个学生(包含学号和学生姓名) delete 删.原创 2021-06-15 09:11:10 · 925 阅读 · 1 评论 -
PTA 7-3 学生列表 (20 分) JAVA
7-3 学生列表 (20 分)编写学生类,包含学号no、姓名name、成绩score,提供必要的构造函数、toString函数和equals/hashcode函数,其中,toString函数的格式为“no:xxx name:xxx score:xxx”,no参与equals和hashcode的计算 在main函数中构造一个学生列表对象(List),用于存放多个学生对象 从命令行输入多个学生对象,存入列表中 从命令行中读入在列表对象上的操作,具体操作包含: add 添加一个学生(包含学号和学生姓名) de.原创 2021-06-15 08:56:28 · 1499 阅读 · 1 评论 -
Codeforces Round #110 (Div. 2)
A Game Outcome题意福尔摩斯和华生在一个n * n的棋盘上玩添数游戏。在游戏期间,他们放置一些数到棋盘上,(其中的规则我们不知道)。然而,现在游戏结束了,棋盘中都有一个数字。要知道谁赢,他们需要计算获胜方块的数量。如果要确定特定的方块是否获胜,你需要做到以下几点。分别计算出这个方块所在的纵列上所有数的和(包括自身)和计算出这个方块所在的横列上所有数的和(包括自身)。如果纵列的和大于横列的和,那么这个方块就算一个获胜方块。 如图所示,真是一个结束的棋局。 然后,紫色格子获胜,因为其纵列之和(原创 2021-06-07 18:29:47 · 158 阅读 · 1 评论 -
兰州大学第一届『飞马杯』程序设计竞赛
A ★★比赛新机制★★最近,AllenAllen 教授研发了一种新的比赛机制,这种比赛机制是 ACPC (AsiaCollegiateProgrammingContest) 赛制的扩展,简称 AUPC (AsiaUniversityProgrammingContest)。参赛者为个人参赛(即每人一台电脑),且成绩分为两部分,过题数和罚时。每道题目的罚时 s 与比赛已经开始的时间(按分钟计) a 以及该题错误的提交次数(不包括编译错误) b 有关,即 s=a+b×20。另外,新赛制规定,每位参赛者必须原创 2021-05-29 22:31:36 · 988 阅读 · 1 评论 -
AC3574乘积数量 (区间操作)
给定一个长度为 n 且不包含 0 的整数序列 a1,a2,…,an。请你计算以下两值:使得 al×al+1×…×ar 为负的索引对 (l,r)(l≤r) 的数量。使得 al×al+1×…×ar 为正的索引对 (l,r)(l≤r) 的数量。题意很简单,就是用前缀和来进行处理,准确的说这里是前缀积题目中只问我们,在索引对中的值是负是正所以说本质上这个数是什么是不重要的,我们只需要考虑他们的正负关系。我们假设以iii结尾的区间:(i-1, i),(i - 2, i)… (0, i)因为我们求出.原创 2021-05-26 22:04:11 · 140 阅读 · 0 评论 -
P1141 01迷宫 (DFS连通性)
学习blog:https://blog.csdn.net/qq_42780289/article/details/100591825题解在一个连通块内,是能保证在连通块上的所有的点能到达这个连通块的任意点的,所以如果一个点已经在一个已经遍历的连通块内的话,就一定是与之前判断连通块内部点的可能性的答案是一致的Code// Problem: P1141 01迷宫// Contest: Luogu// URL: https://www.luogu.com.cn/problem/P1141// Me原创 2021-05-23 17:21:34 · 191 阅读 · 0 评论 -
Codeforces Round #108 (Div. 2)
文章目录[A Marks](https://codeforces.com/contest/152/problem/A)反思题意实现Code单词[B Steps](https://codeforces.com/contest/152/problem/B)反思题意实现Code[C Pocket Book](https://codeforces.com/contest/152/problem/C)反思题意实现CodeA MarksVasya, or Mr. Vasily Petrov is a dean o原创 2021-05-22 17:11:34 · 193 阅读 · 0 评论 -
AcWing做题数量爬虫获取
今天不写算法不写题解,我们来搞一搞OJ——AcWing我们都知道,y总好像没有写我们在AcWing上一共做了多少道题目,那么我们就自己统计吧qwqimport osos.system('pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple requests==2.24.0')# 检查库文件,没有就自动安装os.system('cls')import requestsheaders = { 'User-Agent': '原创 2021-05-19 20:16:49 · 1524 阅读 · 9 评论 -
Educational Codeforces Round 109 (Rated for Div. 2) BC待补
A Potion-making题意:问每一次可以加入一个单位的精华或者水,给你一个k%,问你最少需要加几次才能加到这个浓度我们列列式子就知道:k100=0.0k(不严谨,准确的来说应该是0.01∗k,这里为了好理解)\dfrac{k}{100} = 0.0k(不严谨,准确的来说应该是0.01 *k,这里为了好理解)100k=0.0k(不严谨,准确的来说应该是0.01∗k,这里为了好理解),显然我们知道分母就是我们需要添加的次数,那么我们怎么让左边分母最小来得到右边呢?显然就是约分,约分自然就约分他们的原创 2021-05-18 18:17:42 · 132 阅读 · 0 评论