20201017 模擬賽總結

2022-02-01 02:45:50 字數 2569 閱讀 9567

題目pdf,提取碼q2xb

原題:洛谷 p4198

時間複雜度 \(\mathcal o(n\log^2 n)\)。

#include#include#include#includeusing namespace std;

const int n=1e5;

struct seg

t[n*4+10];

#define ls (p*2)

#define rs (p*2+1)

void build(int p,int l,int r)

int mid=(l+r)/2;

build(ls,l,mid);

build(rs,mid+1,r);

t[p].ans=0;t[p].max=0;

}int get(int p,double k)

void modify(int p,int l,double d)

int mid=(t[p].l+t[p].r)/2;

if(l<=mid) modify(ls,l,d);

else modify(rs,l,d);

// printf("t[%d.ls].max:%.3lf\n",p,t[ls].max);

// printf("t[%d.rs].max:%.3lf\n",p,t[rs].max);

t[p].ans=t[ls].ans+get(rs,t[ls].max);

// printf("get(%d, %.3lf): %d\n",rs,t[ls].max,get(rs,t[ls].max));

t[p].max=max(t[ls].max,t[rs].max);

}inline void read(int &x)

while(c>='0' && c<='9')

x*=f;

}int main()

return 0;

}

原題:洛谷 p1266

令 \(\operatorname(u,s)\) 代表以速度 \(s\) 到達點 \(u\) 的最短時間,這樣在最短路的過程中就可以處理 \(v_i\) 為 \(0\) 的情況。spfa 求最短路即可。

時間複雜度 \(\mathcal o(\text)=\mathcal o(\text)\)。

#include#include#include#include#includeusing namespace std;

const int n=150,m=150*150,v=500;

int head[n+10],ver[m+10],nxt[m+10],v[m+10],l[m+10],tot=0;

inline void add(int x,int y,int vv,int ll)

double dis[n+10][v+10];

bool book[n+10][v+10];

typedef pairpii;

#define mp make_pair

pii pre[n+10][v+10];

int ans[n+10],cnt=0;

inline void spfa()

while(c>='0' && c<='9')

x*=f;

}void output(int x,int y)

int main()

double min=(double)0x7fffffff;

spfa();

int f;

for(int i=1;i<=500;i++)

inline void read(int &x)

while(c>='0' && c<='9')

x*=f;

}int sum[n+10];

int fa[n+10];

void dfs(int u)

}int f[n+10][3]; // 0:0black 1:0white 2:1whit

void dp(int u)

if(col[u]==0)

for(int i=head[u];i;i=nxt[i])

}else if(col[u]==1) }

else

for(int i=head[u];i;i=nxt[i])

}}//0black 1white

void sol()

memset(sum,0,sizeof(sum));

memset(son,0,sizeof(son));

memset(f,0x3f,sizeof(f));

memset(fa,-1,sizeof(fa));

dfs(1);

dp(1);

// for(int i=1;i<=n;i++)

// for(int j=0;j<3;j++)

// printf("f[%d][%d]: %d\n",i,j,f[i][j]);

printf("%lld\n",min(f[1][1],min(f[1][0],f[1][2])));

}signed main()

2020 10 17 普及組 模擬賽C組總結

t1 小x的植樹節 10 題目大意 有n nn個小朋友,每個小朋友有一些fri ends friends friend s,讓你隨機選3個小朋友,讓他們要麼全部都是fri ends friends friend s,要麼全都不是。每種選法概率相等,求合法概率保留3位小數。思路 不會,先判斷為0的情況...

2020 10 17 NOIP提高組模擬賽A組 D

n 乙個長度為n nn的序列a aa,第i ii個數是a ia i ai 問每個數a ia i ai 是否存在乙個數j jj,使得ai aj 0 a i a j 0 ai aj 0 資料範圍 n 1 06,a i 10 6n leq 10 6,a i leq 10 6 n 106,ai 106sol...

2020 10 17 NOIP提高A組 模擬 總結

這就是沒看資料範圍不開 longlong 以及最後暴力都不調樣例還有的結果 死的透紅透紅的 考場 0 100 0 0 100 估分 24 100 30 1 155 16 一開始,sg 函式?昨天剛搞過!然後,到死也推不出來,打完暴力也找不到規律。我 正解打出來了,但發現自己的打法似乎比別人的要複雜許...