题解

[COCI2015-2016#2] VUDU 题解

[COCI2015-2016#2] VUDU 题解 题意 给一个长度为 \(N\) 的整数序列 \({a}\),对于其一共 \(\frac{N\times (N+1)}{2}\) 个的非空区间,求有多少个区间的平均数大于等于 \(p\)。 暴力做法 显然,可以直接枚举区间左端点 \(j\) 与区间右 ......
题解 COCI 2015 2016 VUDU

CF1006E Military Problem 题解

CF1006E Military Problem 题解 题意 给定一颗有 \(n \thinspace (2 \leq n \leq 2 \times 10^5)\) 个节点的树,树根为 \(1\)。 对于每个节点 \(i \thinspace (2 \leq i \leq n)\) 都有它的父节点 ......
题解 Military Problem 1006E 1006

[COCI2012-2013#2] POPUST 题解

[COCI2012-2013#2] POPUST 题解 题意 有 \(N \thinspace (2 \leq N \leq 5 \times 10^5)\) 个物品,每个物品的原价是 \(b_i\) 元。每次选物品时,第一件选出的物品 \(i\) 价格变为 \(a_i\) 元,问选 \(i \th ......
题解 POPUST COCI 2012 2013

Meaningful Mean 题解

[ARC075E] Meaningful Mean 题解 题意 给一个长度为 \(N\) 的整数序列 \({a}\),对于其一共 \(\frac{N\times (N+1)}{2}\) 个的非空区间,求有多少个区间的平均数大于等于 \(k\)。 暴力做法 显然,可以直接枚举区间左端点 \(j\) 与 ......
题解 Meaningful Mean

【题解】CatOJ C0458C 滑动窗口定期重构

标题 trick 的名字我也不知道是什么,就这样吧。 link。 首先有显然的 dp 式子:\(f(i)=\min \{f(j) \times \max\{a_{j+1},\dots,a_i\}\}\)。考虑怎么去优化它。 有显然的 \(\mathcal O(n\log n)\):考虑线段树优化 d ......
题解 C0458C CatOJ C0458 0458C

1.11模拟赛 T1题解

简要题意 \(n\le 10^3 , \sum K_i\le3\times10^5\) 思路 首先容易想到一个暴力DP,\(f_{l,r,x}\) 表示区间中最大值为 \(x\) 的最大值 稍微想亿下可以发现如果这个位置选的不是区间最大值的话,答案一定不优 所以我们可以直接 \(f_{l,r}\) ......
模拟赛 题解 1.11 11

AT_joisc2018_b 题解

AT_joisc2018_b 题解 传送门 题意 有一个以原点为中心的正方形,有 \(n(n\le 100)\) 条不在正方形内部的线段,你需要画一些不在正方形内部的线段,使得这些线段可以把正方形围起来,要求最小化你画的线段的长度和。 思路 我们需要画出一条闭合折线,并且能够把正方形包围。 考虑我们 ......
题解 AT_joisc joisc 2018 AT

1.11模拟赛 T2题解

简要题意 每个点有一定概率向前面的点连边,求两点之间距离的期望 思路 推柿子 code #include<bits/stdc++.h> using namespace std; #define int long long #define N 1000005 int n,m,u,v; const in ......
模拟赛 题解 1.11 11

P4103 [HEOI2014] 大工程 题解

题目链接:大工程 先考虑只有一次查询,很显然我们可以暴力树上 dp 处理出答案。 对于每个节点而言,有: 容易看出类似点分治逐个遍历子树计算前面一堆子树对后面子树的贡献思想,我们可以很容易的知道: 对于路径总和,显然多了一段新的贡献,这段贡献为当前关键点和前面点多的一段 \(2\) 号路线长。这段长 ......
题解 工程 P4103 4103 2014

概率生成函数([CTSC2006] 歌唱王国 题解)

如果数列 {p_n} 满足 P(X=i)=p_i(即 {p_n } 为 X 的概率质量函数 PMF 所构成的数列),那么有概率生成函数:F_X(x)=\sum^{+\infty}_{i=0}P(X=i)x^i,概率生成函数具有一些性质,这些性质可以简化我们做题时的一些推导…… ......
题解 概率 函数 CTSC 2006

P9549 「PHOI-1」路虽远 题解

题目链接:路虽远 带限制的 dijkstra,优先考虑有哪些限制条件,当做类似 dp 去写。闯黄灯次数有要求,限制速度的边数量有要求。 我们注意到,如果选择哪些边限速不易于基于贪心选择,可以考虑转换下,边数 \(-\) 限制数即为可以不限速的边,选择不限速的贪心优于限速的,这样一来,我们在有机会选择 ......
题解 P9549 9549 PHOI

P3741题解

题目分析 给出一个字符串 \(s\),允许改变 \(0\) 或 \(1\) 个字符,求其中 VK 的出现次数。 变量/数组/函数解析 int n 字符串 \(s\) 的长度 string s 字符串 \(s\) int count(string s,string key) 自定义函数:求字符串 \( ......
题解 P3741 3741

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

《算法竞赛》题解---三分

三分法 模板三分法 #include<bits/stdc++.h> #define eps 1e-8//或者 const double eps=1e-8;--主要是double using namespace std; int n; double a[15],l,r; double check(do ......
题解 算法

2023 百度之星决赛题解

T4 传信游戏 建反向边,从入度为 \(0\) 的结点开始搜 T5 喵喵卫士,全靠你了\(\star\) 考虑暴力枚举每个点的深度,发现只要知道相邻两层的深度就能用组合数算方案数,自然想到按层 DP,把上一层的点数记到状态里 赛时做法 按深度从小到大 DP 的话想要记录每个点是否被用过,以保证深度达 ......
题解 2023

P3203 弹飞绵羊 题解

Question P3203 [HNOI2010] 弹飞绵羊 一条直线上摆着 \(n\) 个弹簧,每个弹簧有一个弹力系数 \(k_i\),当绵羊走到第 \(i\) 个弹簧时,会被弹到第 \(i+k_i\) 个弹簧,如果 \(i+k_i>n\) 则会被弹飞,有两个操作 1 x 查询 \(x\) 处的绵 ......
题解 绵羊 P3203 3203

P1085题解

思路 1.定义校内时间/校外时间/最大值 (记录不高兴值) /记录星期 int n,m,maxx=-1,tmp; 2.使用循环输入并判断 for(int i=1;i<=7;i++){//循环一周的日期 cin>>n>>m; if(n+m>8 && maxx<n+m){//如果津津不高兴了且它比以往的 ......
题解 P1085 1085

P5722题解

说两句哈,等差数列求和公式是\((A_1+A_n)\times d \over 2\),所以其实可以一行代码解决,但是我没高斯聪明,于是我不打算用等差数列求和公式。 //(等差数列求和公式) int n; cin>>n; cout<<(1+n)*1/2; 思路 1.定义及输入截止的数/计数器 int ......
题解 P5722 5722

P5718题解

思路 1.定义及输入最小值的变量/输入个数/每个数 int n,m,minn=1001; cin>>n; 2.循环输入每个数并找最小值 while(n--){ cin>>m; minn=min(minn,m); } (用for循环也可以) for(int i=1;i<=n;i++){ cin>>m; ......
题解 P5718 5718

P1307题解

思路 1.定义及输入原数/反转后的数 int n,cnt=0;//反转后的数一定要归零! cin>>n; 2.用while循环反转 while(n!=0){//只要n还没有被分解完,就继续分解 cnt=cnt*10+n%10;//cnt每次*10再加上分离出的数位(*10为了防0) n/=10;// ......
题解 P1307 1307

ABC335E题解

洛谷题面 感觉有点毒瘤,不过还是有些 trick 在的。 题意翻译(复制于洛谷题面): 给定一个 \(N\) 个点 \(M\) 条无向边的图,图上每个点都有其颜色。求所有经过点权单调不降的路径中,出现的不同颜色的个数最多是多少。 由于是单调不降的路径,所以可以点权大的点到点权小的点的路径对结果没有影 ......
题解 335E ABC 335

P3730 曼哈顿交易题解

题目链接:曼哈顿交易 比较容易想的题,观察下首先不带修改,考虑维护的东西:次数作为权值,这玩意很显然很难在线维护,考虑下离线算法。看到这种和次数有关的权值,典型的单点加入和删除是非常好找到变化的,那么就莫队离线算法吧。 考虑下莫队如何来做,涉及到权值第 \(k\) 大,解决方法挺多的,但时限容易知道 ......
题解 P3730 3730

CF1687C Sanae and Giant Robot 题解

题目链接:https://codeforces.com/contest/1687/problem/C 题意简述 有两个长为 \(n\) 的数列 \(a\) 和 \(b\)。有 \(m\) 条线段,你可以进行任意次以下操作: 选择一条线段 \([l, r]\),若 \(\sum\limits_{i = ......
题解 1687C Sanae Giant Robot

P2801 教主的魔法 题解

Question P2801 教主的魔法 有一个 \(n\) 个元素的序列 \(a\),有两种操作 M L R W 对区间 \([L,R]\) 内每个数都加 \(W\) A L R C 询问区间内有多少数字大于或等于 \(C\) Solution 一个比较经典的分块题 暴力分成 \(t\) 个块,对 ......
题解 教主 魔法 P2801 2801

2023 CCPC 桂林题解

gym H. Sweet Sugar 一个经典贪心是从下到上,如果子树 \(u\) 剩下的部分(一定包含 \(u\))包含合法连通块,那么这个连通块给答案贡献 \(1\),切断 \(u\) 与 \(fa[u]\) 的边 key observation:如果一个连通块权值和为 \(x\),那么一定可以 ......
题解 2023 CCPC

P1980题解

自定义函数 定义一个自定义函数find_num用来记录数字x在该数里的个数。 int find_num(int n,int m){ int cnt=0; while(n!=0){ if(n%10=m){ cnt++; } n/=10; } return cnt; } 思路 1.定义及输入截止数/含有 ......
题解 P1980 1980

P1923题解

博文T3航站楼 ✈ P1923【深基9.例4】求第 k 小的数 预先准备 排序用函数 sort,不会用着参看文章sort用法 头文件 #include<algorithm> 及一个数组 a[5000005] 为了保证输入效率,我们用 scanf 进行输入。不会者可参看文章scanf用法 思路 1.定 ......
题解 P1923 1923

P1271题解

博文T4航站楼 ✈ P1271【深基9.例1】选举学生会 预先准备 本题需要用到排序函数 sort,不会者参看文章sort用法 头文件 #include<algorithm> 还需用到一个数组 a[2000005] 思路 1.定义及输入 n,m :选举人数/投票人数 int n,m; cin>>n> ......
题解 P1271 1271

P5015题解

博文T2航站楼 ✈ P5015标题统计 数组及变量准备 变量 string n 输入的标题 int cnt=0 计数器 预先准备 getline函数: 可用于输入带空格的字符串,格式如下 getline(cin,字符串名,结束字符); 思路 getline输入字符串\(n\) getline(cin ......
题解 P5015 5015

1.9模拟赛 T3题解

简要题意 求一个抽象函数,满足 \(∀𝑥 ∈ ℤ, 𝑓(𝑥) + 𝐶 = 𝑓(2𝑓(𝑥) − 𝑥 + 1)\),给定 \(n\) 个点,使得 \(\sum |f(x_i)-y_i|\) 最小,输出最小值 思路 对这个函数进行一次迭代,可以得到 \(f(x+2C)=f(x)+2C\) ......
模拟赛 题解 1.9
共3455篇  :2/116页 首页上一页2下一页尾页