2018hdu多校第七場

2021-08-23 12:07:22 字數 2633 閱讀 1959

其實這場兩個隊友點醒了我,就是我和另乙個隊友的思考風格是,喜歡想出乙個思路來,然後根據各種情況分分分分,ifelseifelse,把情況考慮完,但是昨天另乙個隊友我倆想h的時候,我列舉了一下情況,他說太麻煩,就不行,我當時有點無語,他非要再想乙個全部的方法不用考慮分情況那種,結果事實證明,這樣還是不錯的。

如果當時我們矩陣那個題能夠這樣再多想想,可能會有更好的,更清晰更具有包含性的寫法,就不用寫那麼長,也不好查bug。

樹鏈剖分,思路是去掉一條邊,然後列舉要不要過這個邊的兩個端點,然後取最小。

網上找的板子,跟隊友找了很久很久的bug,就是不明白**錯了。

後來發現居然是陣列開小了????? 但是不明白到底**開小了,需要陣列再開大一倍;

ps:xyk直接把題目輸入的最後一條邊當做環中的一條邊去掉,然後就ac了,這分分鐘hack掉啊,這資料真滴秀,秀的我,,,

**如下:

#include #include #include using namespace std;

#define n 100000+100

#define l(x) (x<<1)

#define r(x) (x<<1|1)

#define mid(x,y) ((x+y)>>1)

#define ll __int64

struct edge

edge[n<<1];

ll c[n];

struct note

note(ll u,ll v,ll len):u(u),v(v),len(len) {}

} aa[n];

int found(ll x)

bool same(ll x,ll y)

void unit(ll x,ll y)

ll head[n], edgenum;

ll huan;

ll dis[n];

void addedge(ll u, ll v, ll d)

; edge[edgenum] = e;

head[u] = edgenum++;

}ll son[n];

ll top[n];

ll fp[n];

ll p[n];

ll siz[n];

ll dep[n];

ll fa[n];

ll tree_id;

void dfs(ll u, ll father, ll deep)

ll query(ll x,ll y)

void change(ll pos, ll val)

ll n, m;

void init()

int main()

else huan=i;

aa[i]=note(u,v,d);

}dfs(1,1,0);

getpos(1,1);

build(1,n,1);

updata(p[1],0,1);

for(i = 2; i <= n; i++) updata(p[i],dis[i],1);

while(m--)

head

long long inv[maxn];

long long f[maxn];

long long euler[maxn];

void init()

printf("%lld\n",ans);

}}

思路是一樣的,關於實現的話,,,

看了看標程,哎,想想隊友那**,瞬間覺得我們還有很長的路要走。

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

const long long mod=1e9+7;

struct jz

jz operator*(const jz &p)const

}coe,ans,unit;

int t_t;

long long a,b,c,d,p,n;

jz pow(jz x,long long m)

void init(long long a,long long b,long long c,long long d,long long x)

int main()

} return *p1++;

} inline bool blank(char ch)

inline void read(int &x)

#undef buf_size

};using namespace fastio;

struct node

bool operator<(const node& s)const

for(int j=0; j>b[i][j];

read(b[i][j]);

}for(int i=0; i=k)

}pos[i] = t;

}while(1)

}pos[i] = t;

}if(q.empty())

break;

}printf("%d\n",ans);

for(int i=0; icout<}

}

多校第七場

乙個字,弱。hdu 4941 magical forest 弱弱的我不會用map離散化,自然這道題與我無緣了,看了別人的 才慢慢理解的。include include include define maxn 100010 using namespace std maph maps mapp mapm...

多校第七場 DP map模擬

hdu 4939 stupid tower defense dp 推一下。include include include include include include include include include include includetypedef long long ll using...

hdu6655 2019杭電多校第七場

這題是全場最水的題。榜被帶歪了 比賽最後半個小時開始寫,然後一開始沒想清楚。wa了,然後想到問題後,16 52不知道怎麼改了。其實稍微仔細推推就很簡單了,比賽最後的時間有點緊張。考慮現在是 cuber qq 出牌,他有兩種選擇,如果他有某張對方很多的牌,那麼他出這張牌,就能讓對方出不了。第二種選擇也...