14:26:48 不想讓 你為難,你不再需要給我個答案。——楊宗緯《空白格》第一題 【noip2018模擬賽】刺客信條(ac)
分四個情況,用乙個並查集維護聯通性
sprt()用於算平方根
#includeconst第二題 【noip2018模擬賽】傳送門 (portal)int n=2002
;using
namespace
std;
char
ch;struct
sbyt[n*n];
intn,x[n],y[n],f[n],xx,yy,tot,ans;
void add(int x,int y,double
v)bool cmp(sby a,sby b)
int ss(int x)
intmain()
f[n+1]=n+1;f[n+2]=n+2
; sort(t+1,t+1+tot,cmp);
for(ans=1;ss(n+1)^ss(n+2);ans++)f[ss(t[ans].x)]=ss(t[ans].y);
printf(
"%.2lf
",t[ans-1
].v);
return0;
}
假設我們當前節點為i
要麼在當前節點設傳送門,暴力走p,再傳回來,很明顯我們會從最深的那個葉子傳回來。
要麼在p的子樹中設傳送門,暴力走這條邊2次(下去1次,回來1次)
a[i]表示i子樹中到i最遠的葉子。
最後答案就是f[1]
#include#define n 1000005第三題【noip2018模擬賽】黑暗之魂(darksoul)#define ll long long
using
namespace
std;
ll f[n],g[n],a[n],c[
2*n],b[2*n],head[n],n,m,next[2*n];
void add(int x,int y,int z)
void dfs(int k,int
o) }
return;}
intmain()
dfs(
1,0);
printf(
"%lld\n
",f[1
]);}
**繁瑣。思想簡單。
求圖的直徑。
環套樹,記dis(x,y)為環上的點x到點y的最短路徑。
顯然,給環定乙個方向,求個字首和。對於每個環上的點x,必有乙個a[x],表示按照給定的方向走,第乙個滿足環長顯然不遞減。
所以拿個線段樹維護一下。乙個區間加,乙個區間減。
#include#define ll long longconst
int n=1e6+7
;using
namespace
std;
intn,cnt,cir,cc,tot,mid,head,tail,flag;
intls[n],ss[n],low[n],bb[n];
bool
vis[n];
int id[n],q[n*2
];ll ans,f[n*2],size[n*2],s[n*2],dis[n*2
],sumdis;
struct
xzg[n*2
];struct
sbya[n];
vector
wyb;
void add(int x,int y,intw);
ls[x]=cnt;
}void tarjan(int x,int
fa)
else
}if(low[x]==ss[x])
}}void dfs(int x,int
fa)
else
if (d>max2) max2=d;
}ans=max(ans,max1+max2);
f[x]=max1;
}bool
cmp(sby a,sby b)
return a.x
}int
main()
sort(a+1,a+n+1
,cmp);
for(int i=1;i<=n;i++)
}}
if(flag)
tarjan(
1,0);
for(int i=1;i<=tot;i++)
dfs(id[i],
0),size[i]=f[id[i]];
for(int i=1;i<=tot;i++)
}}
for(int i=tot+1;i<=2*tot;i++)
dis[i]=dis[i-tot],size[i]=size[i-tot];
for(int i=1;i<=2*tot;i++)
s[i]=s[i-1]+dis[i];
sumdis=s[tot];
head=tail=1
; q[head]=1
;
for (int i=2;i<=2*tot;i++)
printf(
"%lld
",ans+1
);
return0;
}
團隊賽 (第九周)
a and then there was 5 d dating on line h hotel rewards a 題意 給出4個數,兩個乙個組合,求最小的差距。思路 直接排序,中間兩個一組,兩邊一組,這樣差最小。注意 一定是正數。input 4 7 10 20 0 0 1 1000 1 2 3 4...
Educoder 第九關ROC曲線與AUC
題目是計算auc 結合查到的資料寫的 很多地方我也不理解含義 雖然在平台ac了 但在python執行沒有輸出auc 不知道什麼緣故 import numpy as np def calauc prob,labels 計算auc並返回 param prob 模型 樣本為positive的概率列表,型別...
第九周大獎賽計分
description 在歌手大獎賽中,有9位評委為參賽的選手打分,分數為0 10分。選手最後得分為 去掉乙個最高分和乙個最低分後,取其餘7個分數的平均值。請編寫乙個程式實現這個程式。input 9位評委給選手找的分,9個0 10之間的小數 output 選手的最後得分,即9個成績中去掉乙個最高,去...