p3870 2009 tjoi

P4093 [HEOI2016/TJOI2016] 序列 题解

题目链接:序列 对于 LIS 问题,很显而易见的有 dp方程为: \[dp_i=\max{dp_j}+1 \ (j<i,a_j \le a_i) \text{ dp表示以某个位置结尾的最长 LIS} \]本题考虑到对于转移的两位置,如果能从 \(j \rightarrow i\),那么在以上条件成立 ......
题解 2016 序列 P4093 4093

P3870 [TJOI2009] 开关

原题链接 题记 就是线段树,不过树和延迟标记有点绕 code #include<bits/stdc++.h> using namespace std; struct SegmentTree { vector<int> tree, lazy;//tree代表这个节点开着灯的数量,lazy代表这个节点是 ......
P3870 3870 2009 TJOI

P2154 [SDOI2009] 虔诚的墓主人

题目传送门 思路 看一眼数据,\(1\le N\),\(M\le10^9\),太难入手了。所以这道题肯定是从 \(\text{W}\) 和 \(\text{k}\) 入手的。 对于 \(\text{W}\):离散化(此后最多会有 \(2\times W\) 个坐标); 对于 \(\text{k}\) ......
主人 P2154 2154 2009 SDOI

《计算生物学导论 : 图谱、序列和基因组》是2009年8月科学出版社出版的图书,作者是(美)Michael S. Waterman。 [1]

本书介绍分子生物学的基本常识、限制图谱和多重图谱,研究克隆和克隆图谱,讨论DNA序列相关的话题,涉及序列中模式计数的统计问题等。 [1] 图书目录 编辑 播报 《生物数学丛书》序 前言 数学符号 第0章 引言 第1章 分子生物学一些知识 第2章 限制图谱 第3章 多重图谱 第4章 求解DDP的算法 ......
基因组 图谱 导论 生物学 序列

【题解】洛谷P1068 [NOIP2009 普及组] 分数线划定 (map)

## 题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的 $150\%$ 划定,即如果计划录取 $m$ 名志愿者,则面试分数线为排名第 $m \times 150\ ......
题解 分数线 分数 P1068 1068

P3964 [TJOI2013] 松鼠聚会

经典结论题。但是我不会 题意:给出 \(n\) 个点 \((x_i,y_i)\),求出 \(\min_{i=1}^n \sum_{j=1}^n \max(|x_i-x_j|,|y_i-y_j|)\)。 \(\max(|x_i-x_j|,|y_i-y_j|)\) 为两点间的切比雪夫距离,\(|x_i- ......
松鼠 P3964 3964 2013 TJOI

P5901 [IOI2009] Regions

[IOI2009] Regions Luogu P5901 题目描述 联合国区域发展委员会(The United Nations Regional Development Agency, UNRDA)有一个良好的组织结构。它任用了 \(N\) 名委员,每名委员都属于几个地区中的一个。委员们按照其资历 ......
Regions P5901 5901 2009 IOI

P6108 [Ynoi2009] rprsvq 积分题解

给 EI 题解写注 qwq。。 化简方差: \[\frac{1}{n}\sum(a_i-\overline a)^2\\ =\frac{1}{n}(\sum a_i^2-2\overline {a}\sum a_i+n\overline a^2)\\ =(\frac{1}{n}-\frac{1}{n ......
题解 积分 rprsvq P6108 6108

线段树入门】P3870 开关(区间异或和)

1 // 2 //#pragma GCC optimize("Ofast") 3 //#pragma GCC optimize("unroll-loops") 4 #define _CRT_SECURE_NO_WARNINGS 5 #define All(a) a.begin(),a.end() 6 ......
线段 区间 P3870 3870

[HNOI2009] 梦幻布丁

[HNOI2009] 梦幻布丁 题目描述 $n$ 个布丁摆成一行,进行 $m$ 次操作。每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。 例如,颜色分别为 $1,2,2,1$ 的四个布丁一共有 $3$ 段颜色. 输入格式 第一行是两个整数,分别表示布丁个数 $n$ 和操作次 ......
布丁 梦幻 HNOI 2009

P05527 [Usaco2009 Feb]庙会捷运加强版

庙会捷运Fair Shuttle 公交车一共经过 n 个站点,从站点 1 一直驶到站点 n。k群奶牛希望搭乘这辆公交车。第 ii 群牛一共有 m_i只。他们希望从 s_i到 e_i去。 公交车只能坐 c 只奶牛。而且不走重复路线,请计算这辆车最多能满足多少奶牛的要求。注意:对于每一群奶牛,可以部分满 ......
庙会 P05527 05527 Usaco 2009

P3879 TJOI2010 阅读理解

P3879 TJOI2010 阅读理解 基本想法 开一个 map 组成的数组,然后每篇文章分配一个 map。查找的时候在每次都跑一遍。 显然 MLE 了。 改进 既然如此,录入的时候直接把单词出现对应的文章编号存起来就行,就是开一个 map<string, vector<int>>。 但是同一篇文章 ......
阅读理解 P3879 3879 2010 TJOI

[ZJOI2009] 多米诺骨牌

脑子没了 直接做 \(2^{28}\) 肯定是不行的,所以必定要施加容斥,先考虑对行列均进行容斥,也就是枚举哪些行间、列间没有任何骨牌跨过,可以发现,这些行列将网格划分成了若干矩形,那么只要算出这些矩形的方案乘起来就行了,矩形的方案容易直接插头 \(dp\) 算 但是并没有起到优化的效果,因此考虑只 ......
多米诺骨牌 ZJOI 2009

P7775 [COCI2009-2010#2] VUK 题解

链接 这道题卡了我 $40$ 多分钟。 其实就是跑两遍广搜,第一遍算出每个点距离树的最小距离,第二遍开个优先队列,算出逃回窝的途中最大可能的离它最近的树的距离的最小值。 接下来重点讲一下第二遍广搜。 首先,我们要知道,如果我们用 queue ,那么最先到的点不一定是最优的。 所以,我们需要用 pri ......
题解 P7775 7775 2009 2010

P1972 [SDOI2009] HH的项链

P1972 [SDOI2009] HH的项链 我们考虑将所有询问按照右端点归类。 然后从左往右扫描每个位置,如果前面有位置和它重复,就把前面的位置删掉(这样做是对的,因为右端点只可能在之后了,那么要访问到前面的位置,就必须要到达这个位置,相当于把重复的贡献减掉)。 初始时假设所有位置都不重复,都是 ......
项链 P1972 1972 2009 SDOI

P1758 [NOI2009] 管道取珠

[NOI2009] 管道取珠 - 洛谷 题目详情 - [NOI2009] 管道取珠 - BZOJ by HydroOJ 非常神奇的一个思路。 考虑我们要计算的式子的真正意义。\(\sum a_i^2\) 不就相当于让两个管道取珠系统同时进行,最后取出方案完全相同的方案数吗? 因此我们考虑朴素 \(d ......
管道 P1758 1758 2009 NOI

P1072 [NOIP2009 提高组] Hankson 的趣味题

/* "爆int, 爆int, 你就会爆int了是吧" 还是挺难的一道题 具体思路就是通过求出b1的所有约数, 然后看看其中有几个满足gcd(a0, x) == a1 && lcm(b0, x) == b1的数x 通过上一题其实可以求出来, 在int范围内一个数的约数数量最多只有1600个 lcm可 ......
趣味 Hankson P1072 1072 NOIP

[题解] P5901 [IOI2009] Regions

P5901 [IOI2009] Regions 给你一棵树,每个点有颜色 \(h_i\)。 多次询问,每次询问有多少对 \((u, v)\) 满足 \(u\) 是 \(v\) 的祖先且 \(u\) 的颜色是 \(r_1\) 且 \(v\) 的颜色是 \(r_2\)。 \(n, q \le 2 \ti ......
题解 Regions P5901 5901 2009

P3201 [HNOI2009] 梦幻布丁

[HNOI2009] 梦幻布丁 题目描述 \(n\) 个布丁摆成一行,进行 \(m\) 次操作。每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色。 例如,颜色分别为 \(1,2,2,1\) 的四个布丁一共有 \(3\) 段颜色. 数据范围 对于全部的测试点,保证 \(1 \l ......
布丁 梦幻 P3201 3201 2009

[洛谷 P3481] [BZOJ1118] [POI2009] PRZ-Algorithm Speedup

题目描述 你需要计算一个函数 \(F(x, y)\),其中 \(x, y\) 是两个正整数序列。 bool F(std::vector<int> x, std::vector<int> y) { if (W(x).size() != W(y).size()) return false; if (W( ......
PRZ-Algorithm Algorithm Speedup P3481 3481

【题解】BalticOI 2009 Day1 - 甲虫

BalticOI 2009 Day1 - 甲虫 https://www.luogu.com.cn/problem/P4870 首先看到题面就能想到排序后区间 dp。 设 \(f_{i,j,0/1}\) 表示区间 \([i,j]\),收集完毕后在哪个端点时能收集到最多的露水,但是发现转移过程中还需要这 ......
甲虫 题解 BalticOI 2009 Day1

P3202 [HNOI2009] 通往城堡之路

考虑将每个支撑点都先设成其下限高度,即 \(h_i\gets h_1-(i-1)\times d\),这样就只会提高某些支撑点的高度。 显然每次提高的是一个后缀。提高某个后缀的贡献是当前高度低于原先高度的支撑点数量减去当前高度不低于原先高度的支撑点数量。选择贡献最大的后缀直到最后一个支撑点的高度等于 ......
城堡 P3202 3202 2009 HNOI

P3871 [TJOI2010] 中位数

https://www.luogu.com.cn/problem/P3871 看题解有好几种做法 1、对顶堆:用两个堆,分别是大顶堆和小顶堆,维护一个动态的有序序列 我们首先将所有的数丢进大根堆里然后取一半丢进小根堆里,这样就把所有的数分成了两段有序的部分。 加入操作可以每次取小根堆堆顶和加入的数比 ......
中位数 P3871 3871 2010 TJOI

P4309 [TJOI2013] 最长上升子序列题解

P4309 [TJOI2013] 最长上升子序列题解 正文 单调队列?单调锤子队列!! 本题的操作可以省略成: 单点修改 区间查询 好极了,此时我们有两种选择: 线段树和树状数组,(平衡树,真不会,下一位 因为不需要其他操作,所以我们还是选择更小巧更可爱的树状数组吧。 关于vector vector ......
题解 序列 P4309 4309 2013

[TJOI2013] 松鼠聚会 题解

[TJOI2013] 松鼠聚会 题解 切比雪夫距离 切比雪夫距离指的是在平面上的两个点\((x_1,y_1)\),\((x_2,y_2)\)之间横纵坐标之差绝对值中的大者。用公式表示则是\(f(a,b)=max(|x_a-x_b|,|y_a-y_b|)\)。 切比雪夫距离与曼哈顿距离之间可以相互转换 ......
题解 松鼠 TJOI 2013

P5901 [IOI2009] Regions

P5901 [IOI2009] Regions 更好的阅读体验 根号分治,过掉不难,但是想 \(\mathcal O(n\sqrt n)\) 还是有一些思维含量的。 首先考虑一种暴力:预处理两两颜色间的答案,\(\mathcal O(1)\) 查询。首先枚举颜色数,然后每种颜色 \(\mathcal ......
Regions P5901 5901 2009 IOI

P3870 [TJOI2009] 开关(线段树)

P3870 [TJOI2009] 开关 思路:可以用线段树来维护区间中亮灯的个数,区间修改用加上懒标记就好 #include <bits/stdc++.h> #define LL long long using namespace std; const int N = 1e5 + 10; struc ......
线段 P3870 3870 2009 TJOI

P4823 [TJOI2013] 拯救小矮人

发现无论选择哪些逃跑的小矮人,只要存在可行逃跑顺序,那么按逃跑能力从弱到强依次逃跑肯定可行。这或许难以理解,但只要将逃跑的过程反过来就豁然开朗了:人梯高度单调不降,如果逃跑能力弱的都能够到,那还不如让逃跑能力强的先来增高。 所以排序后就可以 DP 了,令 \(f_{i,j}\) 表示前 \(i\) ......
P4823 4823 2013 TJOI

【区间 dp】P5189 [COCI2009-2010#5] ZUMA 题解

P5189 容易想到区间 dp,考虑设计状态。 首先如果只有 \(l,r\) 两维的话,是无法转移的。然后发现 \(m\) 是转移的一个必要的条件,可加入 \(m\) 这一维。由于是区间 dp,所以只需考虑向左或向右加珠子,不妨令 \(f_{i,j,k}\) 消除 \([i,j]\) 以及 \(i\ ......
题解 区间 P5189 5189 2009

【算法笔记】 数位dp (例题是 [SCOI2009] windy 数)

数位dp 引入 数位 :是指把一个数字按位数一位一位地拆开,关注它每一位上的数字。如果拆的是十进制数,那么每一位数字都是 0~9,其他进制可类比十进制,就比如 链接: [SCOI2009] windy 数的二进制同理。 常见特征 要求统计满足一定条件的数的数量(即,最终目的为计数); 这些条件经过转 ......
例题 数位 算法 笔记 windy
共119篇  :1/4页 首页上一页1下一页尾页