3.27考试总结(hnoi难度)
1 duel
1.1 Description
K·⁄¶("“uƒ¢y%¥§H5|+ (?1’m" ’m·ø?1§z<k§⁄k<⁄§lm?0,1,2...§zg ‹‰ª«mS(?1ß§o?1cgß" 3gߥ§Win The Duel§Xkı§K?¿§ {=§=Klٞ¥K§{ØC§,Ølm ›#?0,1,2..." “‹3e(" )K3S§kn¶("K§{n−1¶fi†—ٞ§KI J\§KƒØ§ƒƒUWin The Duelߌƒı§ K3\S?§XkıYƒß…Œ§?"
1.2 Input
11knŒn,c,K§L«(Œ!ßgŒ!K" e51n−1Œ§£ªfi†—Ł(" c1U^S£ªzgß3cS¥«m"
1.3 Output
ŒL«K3S¥?"
1.4 Sample Input
5 3 3
1
0
2
4
1 3
0 1
0 1
1.5 Sample Output
2
1
1.6 Data 50% : n ≤ 5000" 100% : n ≤ 100000§y?Œ3intS"
3
2 city
2.1 Description
C·I§ƒI[·¢‰|⁄/(§z¢‰k{w"CIl ¥!:8S˜veu,v ∈ S§K?¿3u,v Æ·»:pkp ∈ S" S{w8¥!:{w§\Izø{w"du›fl!”C§ zU‹k¢‰{wu)Cz§\I£zU˜{w"
2.2 Input
11kŒn,m§L«!:Œu)CzUŒ§¥¢‰?1n" 11nŒ§1iŒwiL«1i¢‰—'{w" e5n−11§z1Œx,y§L«x,y¢‰mk>º" e5m1§z1Œu,v§L«¢‰u{wCzv"
2.3 Output m + 11§1i1£ª1i−1UY"
2.4 Sample Input
6 3
-7 2 -6 2 9 -5
1 2
2 3
1 4
2 5
2 6
5 9
3 8
1 10
2.5 Sample Output
11
11
19
31
4
2.6 Data
20% : m = 0" 40% : n ≤ 20000,m ≤ 10000" 80% : m ≤ 30000" 100% : 1 ≤ n,m ≤ 200000,−1000 ≤ wi,v ≤ 1000"
今天考试打了两个暴力,第一题是纯暴力的啦。第二题打的是一个dp,修改也只修改当前路径上的值。按道理来说这个复杂度是对的,但是我们还是可以旋转树,修改树高进行优化的说。另外第三题简直太难,完全写不了,题面我也不打算丢上来了。
我打的暴力:
T1
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<cstring>
int n,c,k,i,j,x,y,a[5010],w[5010],l[5010],r[5010],maxl,next[5010],tot,wz1,wz2,ma,wz3,ans;
bool f=true;
using namespace std;
int main()
{
freopen("duel.in","r",stdin); freopen("duel.out","w",stdout);
cin>>n>>c>>k;
for (i=1;i<n;i++) scanf("%d",&w[i]);
for (i=1;i<=c;i++) {scanf("%d%d",&l[i],&r[i]); l[i]++; r[i]++;}
for (j=1;j<=n;j++)
{
for (i=n;i>j;i--) {a[i]=w[i-1]; next[i]=i+1;}
a[j]=k; next[j]=j+1; f=true; tot=0; next[0]=1;
for (i=1;i<j;i++) {a[i]=w[i]; next[i]=i+1;}
i=0;
while (f && i<c)
{
i++;
x=0; wz1=0;
while (x<l[i]-1) {wz1=next[wz1];x++;}
y=x; wz2=wz1; ma=0; wz3=-1;
while (y-x<=r[i]-l[i])
{
wz2=next[wz2]; y++;
if (a[wz2]>ma) {ma=a[wz2]; wz3=wz2;}
}
if (wz3==j) tot++;
if (j>wz1 && j<=wz2 && a[j]<ma) f=false;
next[wz1]=wz3;
next[wz3]=next[wz2];
}
if (tot>maxl) {maxl=tot; ans=j;}
}
cout<<ans-1;
return 0;
}
T2
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<vector>
#define ll int
ll i,j,k,x,n,m,val[200010],y,dad[200010],fa,f[200010][2],bj[200010];
bool ff=true;
using namespace std;
vector <ll> a[200010];
ll max(ll x,ll y) {if (x>y) return x;else return y;}
void ss(ll sd)
{
for (ll i=0;i<a[sd].size();i++) if (bj[a[sd][i]]==0) { bj[a[sd][i]]=bj[sd]+1; dad[a[sd][i]]=sd; ss(a[sd][i]);}
ll tot=0,maxn=-0x7fffffff;
for (ll i=0;i<a[sd].size();i++) if (bj[a[sd][i]]>bj[sd]) {if (f[a[sd][i]][1]>0) tot+=f[a[sd][i]][1]; maxn=max(maxn,f[a[sd][i]][1]);}
f[sd][1]=val[sd]+tot;
f[sd][0]=maxn;
}
void xiugai(int sd)
{
ll tot=0,maxn=-0x7fffffff;
for (ll i=0;i<a[sd].size();i++) if (bj[a[sd][i]]>bj[sd]) {if (f[a[sd][i]][1]>0) tot+=f[a[sd][i]][1]; maxn=max(maxn,f[a[sd][i]][1]);}
f[sd][1]=val[sd]+tot;
f[sd][0]=maxn;
if (dad[sd]!=0) xiugai(dad[sd]);
}
int main()
{
freopen("city.in","r",stdin); freopen("city.out","w",stdout);
cin>>n>>m;
for (i=1;i<=n;i++) scanf("%d",&val[i]);
for (i=1;i<n;i++)
{
scanf("%d%d",&x,&y);
a[x].push_back(y);
a[y].push_back(x);
}
fa=n/2;
//while (dad[fa]!=0) fa=dad[fa];
m++;
while (m--)
{
if (!ff) {scanf("%d%d",&x,&y); val[x]=y; xiugai(x); ll ans=-0x7fffffff; for (i=1;i<=n;i++) {ans=max(ans,f[i][1]); if (f[i][0]!=0 && f[i][0]>ans) ans=f[i][0]; } printf("%d\n",ans); continue;}
//for (i=1;i<=n;i++) {f[i][0]=0; f[i][1]=val[i]; bj[i]=0;}
bj[fa]=1;
if (ff) ss(fa);
ff=false;
ll ans=-0x7fffffff;
for (i=1;i<=n;i++) {ans=max(ans,f[i][1]); if (f[i][0]!=0 && f[i][0]>ans) ans=f[i][0]; }
printf("%d\n",ans);
//scanf("%d%d",&x,&y);
//val[x]=y;
}
return 0;
}
3.27考试总结(hnoi难度)的更多相关文章
- 3.29考试(HNOI难度)
一. 城镇 [ town ] Memory Limit: 128 MB Time Limit : 1s Description 在 farmer land 上,有 N 个 farmer to ...
- 3.25考试(hnoi难度)----神奇的一日游
T1怕老婆 有一天hzy9819,来到了一座大城市拥有了属于他自己的一双滑板鞋.但是他还是不满足想要拥有属于自己的一栋楼,他来到了一条宽敞的大道上,一个一个记录着这些楼的层数以方便自己选择. hzy9 ...
- 2016.3.22考试(HNOI难度)
T1 盾盾的打字机 盾盾有一个非常有意思的打字机,现在盾哥要用这台打字机来打出一段文章. 由于有了上次的经验,盾盾预先准备好了一段模板A存在了内存中,并以此为基础来打出文章B.盾盾每次操作可以将内存中 ...
- 2016 10 27 考试 dp 向量 乱搞
目录 20161027考试 T1: T2: T3: 20161027考试 考试时间 7:50 AM to 11:15 AM 题目 考试包 据说这是一套比较正常的考卷,,,嗯,,或许吧, 而且,,整个小 ...
- 2021.7.27考试总结[NOIP模拟25]
罕见的改完了题 T1 random 一堆概率,一堆函数,一堆递归,一眼不可做, 但它只有一个参数,所以.. 熠神本着"只有20太难看"的心态,通过样例三个出规律,口胡了一波$\fr ...
- 7.27考试总结(NOIP模拟25)[random·string·queue]
死亡的尽头,没有神 T1 random 解题思路 这波是找规律完胜了.. lby dalao根据样例找出了正确的式子:\(\dfrac{n^2-1}{9}\) 然而,我这个菜鸡却推出了这样一个错误的式 ...
- 2021.10.27考试总结[冲刺NOIP模拟17]
T1 宝藏 发现每个数成为中位数的长度是关于权值单调的.线段树二分判断是否合法,单调指针扫即可. 考场上写了二分,平添\(\log\). \(code:\) T1 #include<bits/s ...
- 《JavaScript网页特效经典300例》
<JavaScript网页特效经典300例> 基本信息 作者: 杨磊 张志美 丛书名: 百炼成钢系列丛书 出版社:电子工业出版社 ISBN:9787121220524 上架时间:20 ...
- Struts2 验证码图片实例
本文转载于DongLiYang的博客http://www.cnblogs.com/dongliyang/archive/2012/08/24/2654431.html 其中修改过一部分,针对使用注解而 ...
随机推荐
- TI CC254x BLE教程 2
连接更新请求(connection update request) 如果slave不满意现有的连接参数, 比如间隔, 延迟等等, 可以向master提出自己希望的参数范围 连接终止(connectio ...
- 为ecshop红包增加”转赠”功能
ecshop促销中使用红包激励用户购物,要想炒热活动,红包就需要有物以稀为贵的感觉.有人求有人送,这样红包之间的转赠有助于拉动第二梯队的顾客.但是如果已经把红包添加到自己的账户了怎么办?如果ecsho ...
- Mysql ibdata 丢失或损坏如何通过frm&ibd 恢复数据
mysql存储在磁盘中,各种天灾人祸都会导致数据丢失.大公司的时候我们常常需要做好数据冷热备,对于小公司来说要做好所有数据备份需要支出大量的成本,很多公司也是不现实的.万一还没有做好备份,数据被误删除 ...
- SDUT 2413:n a^o7 !
n a^o7 ! Time Limit: 1000MS Memory limit: 65536K 题目描述 All brave and intelligent fighters, next you w ...
- 计算机学院大学生程序设计竞赛(2015’12)The Country List
The Country List Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- Android GridView 第一个Item 点击没反应
@Override public View getView(final int position, View convertView, ViewGroup parent) { final ViewHo ...
- Shopping(SPFA+DFS HDU3768)
Shopping Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- U3D UGUI学习5 - Layout和文字适配
Layout这部分UGUI算是比NGUI做的到位 之前遇到了一个问题,NGUI做文字和背景框适配和容易,绑定一下就好了.UGUI你得弄Layout才可以,而且还需要配置. 但这个Layout使用场合是 ...
- JAVA基础知识之网络编程——-使用MutilcastSocket实现多点广播
IP多点广播原理 设置一组特殊网络地址作为多点广播地址,每一个多点广播地址都被看作一个组,当客户需要发送和接受信息时,加入到该组即可. IP协议为多点广播提供了一批特殊的IP地址,范围是224.0.0 ...
- 遍历对象的list删除时报错问题。
我们对一个对象的list或者map进行删除操作时,可能会这么写 for(Distributor distributor:distributorList){ String distributorShor ...