NOIP

算法刷题记录:[NOIP2009]潜伏者

###题目链接 https://ac.nowcoder.com/acm/contest/19306/1051 ###题目分析 用a、b进行映射。map或者模拟都可以。 注意两点即可: - a中的所有字母必须在b中出现,那么我们统计b中的所有字符再来判断a。 - a、b不能矛盾,将b[i]储存在idx ......
算法 NOIP 2009

[NOIP2012 提高组] 借教室

### 题意 学校在n天内每天有ai个教室可以租借,现在有m个订单,每个订单需要在第si天至第ti天租借di个教室,现在按顺序处理订单,判断能否满足所有订单,若不行,求第几个订单开始不满足 ### 解题思路: 1.要让区间减去某个值,可以构造差分数组来处理 2.求第几个订单开始不满足,满足二分解答适 ......
教室 NOIP 2012

[NOIP2012]Vigenère 密码

###题目链接 https://ac.nowcoder.com/acm/contest/19306/1052 ###题目分析 根据题目给的图发现,密文的会因为**密钥的起始位置**去**偏移**,形成了一个环。 所以只要我们知道密钥的起始位置,密钥与密钥的距离**(密文-密钥)**,就可以求出明文的 ......
密码 Vigen NOIP 2012 232

NOIP2014普及组试题题解

1.珠心算测验 代码: #include<bits/stdc++.h> #define ll long long using namespace std; const int N = 2e4+39+7; int mp[N],n,a[N],ans=0; int main(){ cin>>n; for( ......
题解 试题 NOIP 2014

NOIP2015普及组试题题解

1.金币 代码: #include<bits/stdc++.h> #define ll long long using namespace std; int ans=0,t=1,n; int main(){ cin>>n; while(n){ for(int i=1;i<=t;i++){ ans+= ......
题解 试题 NOIP 2015

NOIP2016普及组试题题解

1.买铅笔 代码: #include<bits/stdc++.h> #define ll long long using namespace std; int n,ans=1e9,a,b; int main(){ cin>>n; for(int i=1;i<=3;i++){ cin>>a>>b; a ......
题解 试题 NOIP 2016

[NOIP2002]级数求和

###题目链接 https://ac.nowcoder.com/acm/contest/19305/1044 ###解题思路 模拟级数求和 ###AC代码 ```c++#include using namespace std; // n:首项 double sn = 0,n = 1, k; // 找 ......
级数 NOIP 2002

NOIP2017普及组试题题解

1.成绩 原题:https://www.luogu.com.cn/problem/P3954 代码: #include<bits/stdc++.h> #define ll long long using namespace std; int a,b,c; int main(){ cin>>a>>b> ......
题解 试题 NOIP 2017

NOIP 2022 游记

[合集链接](https://www.cnblogs.com/acceptedzhs/p/oi-2022-2023-tour.html) 果然 CSP 人品爆发,到了 NOIP 就栽跟头了...(好像去年也是这样?) T1 随便搞搞。怎么有多测啊,怎么还有取模啊,不停提醒自己要清空到位。精心构造的大 ......
游记 NOIP 2022

2022.11.24 NOIP模拟赛

## A. 不降序列 #### 题目描述 `lzx2005` 了解到有一种在 $O(n\log n)$ 的时间复杂度内求出一个序列 $a$ 的最长不下降子序列的方法如下: 维护一个序列 $b$,初始时为空。依次考虑 $a_1,a_2,\ldots ,a_n$,当考虑到 $a_i$ 时,求出序列 $b ......
模拟赛 2022 NOIP 11 24

算法学习记录(模拟枚举贪心题单):[NOIP2007]字符串的展开(未AC,明天找bug)

###题目链接 https://ac.nowcoder.com/acm/contest/20960/1001 ###解题思路 很简单的模拟题,以后写模拟要**先分两大类,元素在某个集合中存不存在的问题,再细分。** ###未AC代码 ```c++ #include #include using na ......
字符串 算法 字符 NOIP 2007

NOIP2018普及组试题题解

1.标题统计 原题:https://www.luogu.com.cn/problem/P5015 #include<bits/stdc++.h> #define ll long long using namespace std; string s;int ans=0; int main(){ get ......
题解 试题 NOIP 2018

算法学习记录:[NOIP2016]回文日期

###题目链接 https://ac.nowcoder.com/acm/contest/20960/1015 ###TLE代码 ```c++ #include using namespace std; const int N = 10; int n, x, y; int X[N], Y[N]; in ......
回文 算法 日期 NOIP 2016

算法学习记录:[NOIP2011]铺地毯

###题目链接: https://ac.nowcoder.com/acm/contest/20960/1016 ###解题思路: 最直观的方法,因为编号大的地毯一定更靠后,所以直接用编号进行标记。 ###时间复杂度分析: 该代码时间复杂度为$O(N^2)$,有$(10^5)^2$,评测oj每1秒能接 ......
算法 地毯 NOIP 2011

NOIP2021游记

Chapter 0 倘若你问我2021的游记为什么会2023才来写,~~那当然是要高考了闲得慌~~ 我必须承认,退役之战已经过了一年半,我近乎完全忘记了当天的细节。但或许重要的是给自己 OI 的一个结局,青春的帷幕吧。 Chapter 1 此情可待成追忆, Day0 是我 OI 生涯的最后一天,它一 ......
游记 NOIP 2021

「回忆录」NOIP2022游寄

~~都已经过去半年了才来更的屑~~ 距离 CSP 还有一周左右的时间,我们停课了,然后来了东校。 Al:“为了庆祝我们在一起学习,下午我们考试!” ??? 好像就呆了 $1$ 天半,因为疫情,我们要提前出发去日照,然后中午家长们紧急把东西送来,Al 跑回一区把 ycc 和 zxs 接来,三区的 wx ......
回忆录 NOIP 2022

全国信息学奥林匹克联赛(NOIP2011)复赛提高组day2

一、计算系数 首先对题目多项式进行简化分析 (x+y)2=x2+2xy+y2 (x+y)3=x3+3x2y+3xy2+y2 (x+y)4=x4+4x3y+6x2y2+4xy3+y4 不难发现它们的系数组成了一个杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …… 进一步带入则可 ......
复赛 联赛 全国 信息 NOIP

「NOIP2008」笨小猴

笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 这种方法的具体描述如下:假设maxn是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果maxn-minn是一个质数,那么笨小猴 ......
NOIP 2008

[NOIP2017 普及组] 跳房子

这是一道很复杂有趣的题目 题目描述 跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一。 跳房子的游戏规则如下: 在地面上确定一个起点,然后在起点右侧画 n 个格子,这些格子都在同一条直线上。每个格子内有一个数字(整数),表示到达这个 格子能得到的分数。 玩家第一次从起点开始 ......
NOIP 2017

23.5.2 NOIP2011 Day1提高游记

今天做的比较得愉快快呢,除了第三题hh 1.铺地毯 这题我不做太多评价,纯纯的一道大水题。 注意遍历数据的时候倒着遍历,还有就是不能用二维数组,会MLE。 code: 1 #include<bits/stdc++.h> 2 #define N 10005 3 using namespace std; ......
游记 2011 NOIP Day1 Day

luogu_P1040 [NOIP2003 提高组] 加分二叉树

P1040 [NOIP2003 提高组] 加分二叉树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意:给你一颗中序遍历为1到n的二叉树,和每个节点的val。树的值=左子树的值×右子树的值+根的val,空树值为1,求整个树最大值和这个值树的前序遍历。 题解:区间dp。dp[l] ......
luogu_P luogu 1040 NOIP 2003

P2671 [NOIP2015 普及组] 求和

here 看到这个条件,想到等差数列,于是假设了1, 3, 5位置上的颜色一样时,总和是多少,然后发现是: (1 + 1 + 3 + 5)f(1) + (1 + 3 + 3 + 5)f(3) + (1 + 3 + 5 + 5)f(5) 现在看的很清楚了,有两种可能: (i + 配对的数之和 + i) ......
P2671 2671 2015 NOIP

[NOIP2009 普及组] 多项式输出

题目描述 一元 $n$ 次多项式可用如下的表达式表示: $$f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots +a_1x+a_0,a_n\ne 0$$ 其中,$a_ix^i$ 称为 $i$ 次项,$a_i$ 称为 $i$ 次项的系数。给出一个一元多项式各项的次数和系数,请按照如下规 ......
多项式 NOIP 2009

[NOIP2016 普及组] 海港

题目背景 NOIP2016 普及组 T3 题目描述 小 K 是一个海港的海关工作人员,每天都有许多船只到达海港,船上通常有很多来自不同国家的乘客。 小 K 对这些到达海港的船只非常感兴趣,他按照时间记录下了到达海港的每一艘船只情况;对于第 $i$ 艘到达的船,他记录了这艘船到达的时间 $t_i$ ( ......
海港 NOIP 2016

P1540 [NOIP2010 提高组] 机器翻译

题目背景 小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。 题目描述 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有,软件就会用它进行翻译;如果内存中没有,软件就会在外存中 ......
机器 P1540 1540 NOIP 2010

P2661 [NOIP2015 提高组] 信息传递-拓扑排序+DFS深度优先遍历

有 n 个同学(编号为 1 到 n )正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为 i 的同学的信息传递对象是编号为 Ti​ 的同学。 游戏开始时,每人都只知道自己的生日。之后每一轮中,所有人会同时将自己当前所知的生日信息告诉各自的信息传递对象(注意:可能有人可以... ......
拓扑 深度 P2661 信息 2661

P1067 [NOIP2009 普及组] 多项式输出

# [NOIP2009 普及组] 多项式输出 ## 题目描述 一元 $n$ 次多项式可用如下的表达式表示: $$f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots +a_1x+a_0,a_n\ne 0$$ 其中,$a_ix^i$ 称为 $i$ 次项,$a_i$ 称为 $i$ 次项的系 ......
多项式 P1067 1067 NOIP 2009

NOIP 2010 题解

机器翻译 单向链表,如果 $i$ 在内存里,那么用 $nxt[i]$ 来记录他的下一个单词,每次要插入的时候,如果当前链表的长度小于 $m$,那么直接把他插入的末尾,如果等于 $m$,就把链表的第一个从链表里弹出来,再把这个元素加进去。 $Code :$ #include <bits/stdc++. ......
题解 NOIP 2010

P2680 NOIP2015 提高组 运输计划

P2680 NOIP2015 提高组 运输计划 最小化最长的路径,考虑二分答案。 问题转化成检验删去一条边的边权后,最长路径权值能否不超过 $x$。 考虑没删边权时,原先那些不超过 $x$ 的路径,删去边权后肯定不会影响,直接忽略。 考虑原先比 $x$ 长的那些路径。我们期望删边权后这些路径全部变短 ......
P2680 2680 2015 NOIP

P1074 [NOIP2009 提高组] 靶形数独

题目传送门 思路 就是一个填数独的小游戏 ~~不会填数独的先去自己玩几把~~ 众所周知,数独每一行、每一列、每一个3*3宫格内的数字均含1~9,且不重复 所以我们设三个数组r[10][10],c[10][10],block[10][10] 分别记录行、列、3*3宫格内数字的使用情况 重点:剪枝 我们 ......
P1074 1074 NOIP 2009