这名用户暂未设置签名。
追踪最近的用户名外显变动记录。
最近的文章、讨论、云剪贴板与社区记录
在讨论《用lct的能否看下》回复:
。。。忽然发现这就是克鲁斯卡尔,哎太久没复习
实在没想明白我把次小生成树的lct做法稍微改下交到这里,竟然只跑300ms。我用本题题解做的lct跑了2s啊,为什么 下附代码(我甚至不知道这个做法是不是对的```cpp ``` #include #define maxn 301000 using namespace std ; struct edge{ int x…
在讨论《关于1操作》回复:
巧了,真能A,是数据的问题吗
在讨论《另一种getroot写法》回复:
懂了
第一种100分 void update ( int x , int y ) { access ( x ) ; splay ( x ) ; val[ x ] = y ; pushup(x) ; } ``` 第二种100分 void update ( int x , int y ) { access ( x ) ; spl…
在讨论《另一种getroot写法》回复:
为什么错了呢
在讨论《另一种getroot写法》回复:
少了个分号请忽略,,,
```cpp int fin ( int x ) { access ( x ) ; while ( fa[ x ] ) x = fa[ x ] return x ; } 但是这样写会RE一个点,不知道为什么,过路大佬求教!!! ```
在讨论《这题是lca+差分码?》回复:
这题有问题,结果用long long存50分,用int 存AC,估计是结果爆了int
在讨论《这题是lca+差分码?》回复:
@ lin\_toto这题数据是不是有问题? 题面说输出是非负整数,但结果却“expect -1296**”
在讨论《这是什么splay操作》回复:
(t[z].ch[1]==y)^(t[y].ch[1]==x)?rotate(x):rotate(y); 这句看不懂
```cpp inline void Splay(int x,int goal) { while(t[x].ff!=goal) { int y=t[x].ff;int z=t[y].ff; if(z!=goal) (t[z].ch[1]==y)^(t[y].ch[1]==x)?rotate(x):rotate(y);…
在讨论《这个题怎么没O2啊》回复:
在lca与u,v的道路上看看有没有断点(暴力即可,不用树状数组)
在讨论《这个题怎么没O2啊》回复:
貌似不用数据结构也能A
在讨论《血和泪的教训,求大佬指教》回复:
lg[]我是抄洛谷讲义的; 我的问题是 for(int j=1;j<=L;j++) for(int i=1;i<=n;i++) 这两句话的位置我是反过来的, 而在天天爱跑步里并没有错
在讨论《血和泪的教训,求大佬指教》回复:
而且天天爱跑步我这样写没错
我在做倍增预处理时,一开始是这样写的 ```cpp for (int i = 2;i <= n;i ++) for (int j = 1; j<= lg [ dep [ i ] ];j ++)//lg[]就是log2i { f [ i ] [ j ] = f [ f [ i ] [ j - 1 ] ] [ j - 1…
在讨论《这是为什么呢》回复:
我用sort排序也错了
在讨论《只A了第1,12点的,10分的进来看看》回复:
@[I\_AM\_HelloWord](/space/show?uid=54916) 谢谢大佬
在讨论《只A了第1,12点的,10分的进来看看》回复:
@[X\_o\_r](/space/show?uid=25188) 谢谢大佬
在讨论《只A了第1,12点的,10分的进来看看》回复:
@[唐鼎](/space/show?uid=34259) 上面几条我发的大家屏蔽掉------------ 我重新折腾了一番,发现自己发本帖时思绪比较乱。 所以重新说一下:用dep或vis都可以 但是 ```cpp for(int i=20;i>=0;i--) if(f[a][i]!=f[b][i]) { a=f[a]…
在讨论《只A了第1,12点的,10分的进来看看》回复:
@[唐鼎](/space/show?uid=34259) 说错了,是上面(哎。。真粗心)
在讨论《只A了第1,12点的,10分的进来看看》回复:
```cpp #include using namespace std; struct node { int from,to,w; }next[10001],ed[50001]; struct nod { int to,w; }; int n,m,father[10001],dep[10001],s[10001][21…
在讨论《只A了第1,12点的,10分的进来看看》回复:
另外 ```cpp for(int i=20;i>=0;i--) if(f[a][i]!=f[b][i]) { a=f[a][i]; b=f[b][i]; ans=min(ans,min(s[a][i],s[b][i])); } ans=min(ans,min(s[a][i],s[b][i]));这句话必须在其他两句的…
我一开始用deep[]数组判断这个点访问过没(在dfs倍增与处理中,想偷个懒) 结果10分 后来另建个vis[]数组来判断,结果A了 哪位大佬能解释下?
在讨论《给被第四点卡住的人的提示》回复:
**为什么我的l设为1也过了** ```cpp #include using namespace std; int n,m,a[101000],ans=0x7fffffff; bool check(int x) { int tot=0,k=m; for(int i=1;i x) { k--; tot=0; i--; }…
在讨论《用方格取数的方法过了 但是题意应该是不一样的吧》回复:
如果他们走到了一起,那么有一个会当0,与其走0的这一格,不如走其他没走过的(非0)的格子