题目描述 降雷皇哈蒙很喜欢雷电,他想找到神奇的电光.哈蒙有$n$条导线排成一排,每条导线有一个电阻值,神奇的电光只能从一根导线传到电阻比它大的上面,而且必须从左边向右传导,当然导线不必是连续的.哈蒙想知道电光最多能通过多少条导线,还想知道这样的方案有多少. 输入格式 第一行两个整数$n$和$type$.$type$表示数据类型 第二行$n$个整数表示电阻. 输出格式 第一行一个整数表示电光最多能通过多少条导线.如果$type=1$则需要输出第二行,表示方案数,对$123456789$取模. 样例…
题目传送门(内部题98) 输入格式 第一行一个整数$n$,第二行$n$个整数$a_1\sim a_n$,第三行$n$个整数$b_1\sim b_n$. 输出格式 一行一个整数表示$\max(r-l+1)$.保证至少有一个区间满足条件. 样例 样例输入: 52 -4 1 2 -2-2 3 1 -3 1 样例输出: 数据范围与提示 对于$20\%$的数据,$n\leqslant 5,000$. 对于$60\%$的数据,$n\leqslant 10^5$. 对于$100\%$的数据,$1\leqsla…
A. 神炎皇 很好的一道题,可能第一次在考场上遇到欧拉函数 题意:对于一个整数对 $(a,b)$,若满足 $a\times b\leq n$且$a+b$是$a\times b$的因子, 则称为神奇的数对.问这样的数对共有个? 首先式子同时除一个$gcd(a,b)$,那么设$d=gcd(a,b)$,则$a=A/d,b=B/d$, 所以因为$a$,$b$,中已经将因子全部提出,所以$a\times b$与$a+b$是互质的 然后设$k$为$d/(a+b)$,显然$k\times (a+b)\time…
//树形DP+树状数组 HDU 5877 Weak Pair // 思路:用树状数组每次加k/a[i],每个节点ans+=Sum(a[i]) 表示每次加大于等于a[i]的值 // 这道题要离散化 #include <bits/stdc++.h> using namespace std; #define LL long long typedef pair<int,int> pii; const double inf = 123456789012345.0; const LL MOD…
1264: [AHOI2006]基因匹配Match Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 793  Solved: 503[Submit][Status][Discuss] Description 基 因匹配(match) 卡卡昨天晚上做梦梦见他和可可来到了另外一个星球,这个星球上生物的DNA序列由无数种碱基排列而成(地球上只有4种),而更奇怪的是,组成DNA序列的 每一种碱基在该序列中正好出现5次!这样如果一个DNA序列有N种不同的碱基…
题目描述 Farmer John's N (1 <= N <= 100,000) cows are lined up in a row andnumbered 1..N. The cows are conducting another one of their strangeprotests, so each cow i is holding up a sign with an integer A_i(-10,000 <= A_i <= 10,000). FJ knows the…
奶牛抗议 DP 树状数组 USACO的题太猛了 容易想到\(DP\),设\(f[i]\)表示为在第\(i\)位时方案数,转移方程: \[ f[i]=\sum f[j]\;(j< i,sum[i]-sum[j]\ge0) \] \(O(n^2)\)过不了,考虑优化 移项得: \[ f[i]=\sum f[j]\;(j< i,sum[i]\ge sum[j]) \] 这时候我们发现相当于求在\(i\)前面并且前缀和小于\(sum[i]\)的所有和,这就可以用一个树状数组优化了,在树状数组维护下标为…
显然发现可以二分. 对于n<=100暴力dp f[i][j]表示前i个数分成j段对于当前的答案是否可行. 可以发现这个dp是可以被优化的 sum[i]-sum[j]<=mid sum[i]-mid<=sum[j] 维护一个最大的sumj 即可O(1)转移 复杂度nklog 可以获得 40分. 考虑ai>=0 二分完之后直接贪心即可 能选就选 可以证明 这是最优的或者说对后面结果不会更差. 考虑ai<=0 二分完之后可以发现能分成一段就分成一段 只要分的段数>=k即可.…
题目链接 长度为\(i\)的不降子序列个数是可以DP求的. 用\(f[i][j]\)表示长度为\(i\),结尾元素为\(a_j\)的不降子序列个数.转移为\(f[i][j]=\sum f[i-1][k]\),其中\(k\)满足\(k<j\)且\(a_k\leq a_j\),可以用树状数组\(O(n^2\log n)\)解决. 那么长度为为\(i\)的不降子序列个数\(sum[i]=\sum_{j=i}^nf[i][j]\). 比较麻烦的是得到不降序列后会立刻停止操作.如果没有这个限制,答案就是\…
题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹. 输入导弹依次飞来的高度(雷达给出的高度数据是\le 50000≤50000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统. 输入输出格式 输入格式: 11行,若干个整数(个…