• 2024-06-06CSP历年复赛题-P2672 [NOIP2015 普及组] 推销员
    原题链接:https://www.luogu.com.cn/problem/P2672题意解读:N家住户,每家住户与出入口距离是Si米,推销员每走1米疲劳值+1,向第i家住户推销疲劳值+Ai,推销员推销完原路返回出口,计算在向不同数量X的住户推销时,能达到的最大疲劳值。解题思路:本题是一种贪心选择问题,需要思考出可能的最优
  • 2024-06-05CSP历年复赛题-P2671 [NOIP2015 普及组] 求和
    原题链接:https://www.luogu.com.cn/problem/P2671题意解读:找到所有符合条件的三元组,累加三元组的分数,结果对10007取模。解题思路:仔细读题,并分析数据规模,1~4个数据点可以通过O(n^2)复杂度解决,也就是枚举法。1、枚举法要求x<y<z,y−x=z−y,移项可得x+z=2*y,并且c
  • 2024-06-03[NOIP2015 提高组] 跳石头
    [NOIP2015提高组]跳石头跳石头题目描述一年一度的“跳石头”比赛又要开始了!这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有$N$块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点
  • 2024-05-27【NOIP2015普及组复赛】题3:求和
    题3:求和【题目描述】一条狭长的纸带被均匀划分出了nnn个格子,格子编号从11
  • 2024-05-27【NOIP2015普及组复赛】题4:推销员
    题4:推销员【题目描述】阿明是一名推销员,他奉命到螺丝街推销他们公司的产品。螺丝街是一条死胡同,出口与入口是同一个,街道的一侧是围墙,另一侧是住户。螺丝街一共有NNN家
  • 2024-04-26洛谷题单指南-动态规划2-P2679 [NOIP2015 提高组] 子串
    原题链接:https://www.luogu.com.cn/problem/P2679题意解读:在a中按顺序挑选k个子串,使得这些子串连在一起正好和b相等,求方案数。解题思路:这样的题目,无外乎两个思路:DFS暴搜(得部分分)、动态规划动态规划不好想,还是先暴搜吧!1、DFS暴搜搜索的思路就是:从a起始位置开始,一直找到跟b前
  • 2024-04-07P2680 [NOIP2015 提高组] 运输计划
    P2680[NOIP2015提高组]运输计划二分+树剖开始题目理解错了,这里的最短时间指的是所有路径的最大值。所以题目要求的就是让所有路径的最大值最小,显然可以二分。二分最大值\(x\),那么假如一条路径长度为\(d\)并且\(d>x\),显然需要修改,即一定要删去路径上的一条边\((u,v)\),满
  • 2024-04-06P2678 [NOIP2015 提高组] 跳石头
    思路:运用两次数组比较,按照序号和前后相差距离的大小比较排序。代码:首次尝试30分#include<algorithm>#include<iostream>#include<cstring>#include<queue>#include<cmath>usingnamespacestd;intm,n;longlongl;inta[50010];structnode{ intid; intch
  • 2024-03-22P2615 [NOIP2015 提高组] 神奇的幻方
    P2615[NOIP2015提高组]神奇的幻方[NOIP2015提高组]神奇的幻方题目背景NOIp2015提高组Day1T1题目描述幻方是一种很神奇的\(N\timesN\)矩阵:它由数字\(1,2,3,\cdots\cdots,N\timesN\)构成,且每行、每列及两条对角线上的数字之和都相同。当\(N\)为奇数时,我们
  • 2024-03-01洛谷题单指南-二分查找与二分答案-P2678 [NOIP2015 提高组] 跳石头
    原题链接:https://www.luogu.com.cn/problem/P2678题意解读:最短跳跃距离越大,要移走的石头就越多,因此可以根据最短跳跃距离的不同把情况分为两类:移走的石头数<=M、移走的石头数>M,对最短跳跃距离二分即可。解题思路:二分的判定条件如下:对于给定最短跳跃距离,需要计算移走的石头数,
  • 2024-02-11P5524 [Ynoi2012] NOIP2015 充满了希望 题解
    题目链接:充满了希望一开始以为是传统老题,结果看到有个交换单修操作,ODT这题试了下,应该\(fake\)了,毕竟有单修,很难保证之前的\(log\)级复杂度。有些较为智慧的解法确实不好思考,说个很简单的做法,这里没有问颜色数,而是问的颜色具体情况,那就比之前的很多题简单太多了。颜色的具体
  • 2024-02-07【洛谷 P2670】[NOIP2015 普及组] 扫雷游戏 题解(模拟)
    [NOIP2015普及组]扫雷游戏题目背景NOIP2015普及组T2题目描述扫雷游戏是一款十分经典的单机小游戏。在行列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的
  • 2024-01-17noip2015 跳石头
    原题链接根据最近的刷题经验,这种求最大最小值问题都是二分答案。首先,我们确定面对一个k,如果它符合题意,那么比他小的值也符合,如果他不符合题意,那么比他大的值更不符合;那么我们要求的就是符合找出11110000中最右边边的1。接着,我们该如何判断k是否符合题意呢?显而易见,从起点遍历所
  • 2023-12-08【洛谷 P2670】[NOIP2015 普及组] 扫雷游戏 题解(模拟)
    [NOIP2015普及组]扫雷游戏题目背景NOIP2015普及组T2题目描述扫雷游戏是一款十分经典的单机小游戏。在行列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的
  • 2023-12-07NOIP2015普及组金币
    NOIP2015普及组金币题目数据(n<=10000)根据题目要求与我们原来学过的打印数字三角形图形很相似。数字三角形如下,数字可以对应成天数:12 34  5  67  8  9  10每天加的金币就是行坐标即可:12  23  3  34  4  4  4代码如何:#includ
  • 2023-11-12【洛谷 P2669】[NOIP2015 普及组] 金币 题解(循环)
    [NOIP2015普及组]金币题目背景NOIP2015普及组T1题目描述国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这
  • 2023-10-23P2679 [NOIP2015 提高组] 子串 题解
    #include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintMOD=1000000007;intn,m,k,dp[205][205][2];charA[1005],B[205];signedmain(){cin.tie(0)->sync_with_stdio(0);cin>>n>>m>>k;cin
  • 2023-09-29解题报告 P2680 [NOIP2015 提高组] 运输计划
    P2680[NOIP2015提高组]运输计划题目链接LCA的题,需要求最大值最小,考虑二分答案。先存储每组询问的距离。然后二分答案时找出所有比当前答案长的距离的重叠部分。在这些重叠部分中找出权值最大的边。判断最长链减去这条边是否小于等于当前答案。否则返回0代码如下/**@
  • 2023-09-17P2679 [NOIP2015 提高组] 子串
    注意\(A\)中取相同位置子串划分方式不同也算作不同的方案。令\(f_{i,j,l,0/1}\)表示\(A\)中前\(i\)个字符,取出\(l\)个子串,拼成了\(B\)中前\(j\)个字符,第\(i\)个字符取/不取的方案数。不取直接累加\(A\)中上一个字符的状态:\[f_{i,j,l,0}=f_{i-1,j,l,0}+f_{i-1
  • 2023-09-16P2669 [NOIP2015 普及组] 金币
    题目背景NOIP2015普及组T1题目描述国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连
  • 2023-09-04NOIP2015提高组复赛day1解析
    1. 解析:送分题,按题意模拟即可代码:#include<bits/stdc++.h>#definelllonglong#definexfirst#defineysecondusingnamespacestd;constintN=39+7;inta[N][N],n;map<int,pair<int,int>>mp;intmain(){ freopen("magic.in","r&
  • 2023-08-23[刷题笔记] Luogu P2679 [NOIP2015 提高组] 子串
    ProblemDescription我们可以换个思路。从字符串\(A\)中拿出\(k\)个字串使其变成\(B\)。求有几种不同的方案?Analysis我们发现\(A\)中的一个字符取或者不取影响后面的决策,这并不代表它一定有后效性,我们可以记录这一层状态。和最长公共子序列同理,定义\(f_{i,j,k,l}(\fo
  • 2023-08-03[Ynoi2012] NOIP2015 充满了希望(扫描线+线段树)
    题目传送门solution简单题。我们正着做扫描线。设\(t_i\)表示位置\(i\)最后一次进行二操作的时间,那么一操作就是交换\(t_x,t_y\),二操作就是区间复制。对于三操作,开一个树状数组,如果查询的位置的\(t_x=j\),就在\(j\)的位置上加一。查询就是查询后缀和。#include<bit
  • 2023-07-28P2679 [NOIP2015 提高组] 子串 题解
    原题\(题目大意\)\(从字符串a中选出k个子串s_1,s_2,s_3...s_k使得s_1+s_2+s_3+...+s_k=b\)\(求总方案数对10^9+7取模的结果\)\(1\le|a|即n\le1000,1\le|b|即m\le200,1\lek\le|b|\)\(设f_{i,j,x}表示已经选到a的第i个字符,b的第j个字符,共选了x个子串的方案数\)\(则可得
  • 2023-07-13题解 [NOIP2015 提高组] 运输计划
    题目链接闲话:虽说是紫题,但慢慢想还是完全没有问题的。由于\(m\)个运输计划同时开始,所以耗费时间就是最慢的飞船耗费的时间(即最长时间)。考虑到题目让求最短时间,也就是最长的最短,可以二分。考虑二分最长时间(记作\(k\)),那么将所有路径分成两类,一类是原来耗费的时间就小于等于\(