-
Bio
足总杯决赛曼联2-1力克曼城捧杯!
夺冠之路
//注:分钟'进球者(助攻者(如果有)or点球说明) Wigan Sports 0-2 Manchester United 0-1 22'Diogo Dalot(Marcus Rashford) 0-2 74'Bruno Fernandes(Penalty) Newport Town 2-4 Manchester United 0-1 7'Bruno Fernandes(Antony) 0-2 13'Kobbie Mainoo(Diogo Dalot) 36'Bryn Morris 1-2 47'Will Evans(Adam Lewis) 2-2 2-3 68'Antony 2-4 90+4'Rasmus Hojlund Nottem Forest 0-1 Manchester United 0-1 89'Casemiro(Bruno Fernandes) Liverpool FC 3-4 Manchester United 0-1 10'Scott Mac Tominay 44'Mac Allister(Darwin Nunes) 1-1 45+2'Mohamed Salah 2-1 2-2 87'Antony 105'Harvey Elliot(Conor Bradley) 3-2 3-3 112'Marcus Rashford(Scott Mac Tominay) 3-4 120'Amad Dialo(Alejandro Garnacho) Couventry City 3-3 Manchester United (3-4) 0-1 23'Scott Mac Tominay(Diogo Dalot) 0-2 45+1'Harry Maguier(Bruno Fernandes) 0-3 58'Bruno Fernandes 70'Ellis Simms(Fabio Tavares) 1-3 79'Callum O'Hare(Ellis Simms) 2-3 90+5'Haji Wright(Penalty) 3-3 Penalty Haji Wright 1-0 Casemiro x Victor Top 2-1 Dalot Callum O'Hare x 2-2 Eriksen Ben Sheaf x 2-3 Bruno Fernandes 2-4 Hojlund Manchester City 1-2 Manchester United 0-1 30'Alejandro Garnacho 0-2 38'Kobbie Mainoo(Bruno Fernandes) 87'Jeremy Doku(Phil Foden) 1-2
滕哈格2年2冠,留下!
这是一个 2023-J-T2 忘判负数、2023-J-T4 忘判无解的 初二比不过初一的a3 的蒟蒻。(锣鼓uid:660641)
NOIP 比线高 分,好感动
众所周知,传谣属于校园欺凌。
所以辟谣:我只说过lmq人品挺好,没说喜欢,关系是mzm乱搞的。
手动将mzm加入失信名单CCF 程序设计能力: 级
如需代码,可在站内消息处私信我题号,如果我已经A了我会将代码回你。
主队:Manchester United
最强小队:
taskkill /f /im studentmain.exe
upd:2022/10/20 100题祭 upd:2024/3/26 Lv.10 祭
写的时间最长的水题,可见我有多
蒟蒻:#include<bits/stdc++.h> using namespace std; #define ll int const ll MAXN=3000010; const ll MAXM=70100000; ll dp[50010][16],cnt,tot,home[MAXN],dep[50010],hmcnt,dis[MAXN]; vector<ll> f[50010],g[50010]; ll mi[16]={1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768}; ll n,m,s; struct node{ ll x1,y1,x2,yy2,w; }e[1000010]; struct edge{ ll next,to,w; }ed[MAXM]; ll found(ll x){ return x==dp[x][0]?x:(dp[x][0]=found(dp[x][0])); } void add(ll a,ll b,ll w){ ed[++tot].w=w; ed[tot].to=b; ed[tot].next=home[a]; home[a]=tot; } bool v[MAXN]; void dfs(ll h,ll fa){ v[h]=true; dep[h]=dep[fa]+1; dp[h][0]=fa; for(ll i=1;i<=15;i++) dp[h][i]=dp[dp[h][i-1]][i-1]; f[h].push_back(0); g[h].push_back(0); for(ll i=1;i<=15;i++) if(dep[h]%mi[i]==0){ f[h].push_back(++hmcnt); g[h].push_back(++hmcnt); } for(ll i=home[h];i;i=ed[i].next){ ll to=ed[i].to; if(to!=fa&&to>0&&to<=n){ dfs(to,h); } } if(dep[h]%2==0){ add(h,f[h][1],0); add(dp[h][0],f[h][1],0); add(g[h][1],h,0); add(g[h][1],dp[h][0],0); } for(ll i=2;i<=16;i++){ if(dep[h]%mi[i]==0){ add(f[h][i-1],f[h][i],0); add(f[dp[h][i-1]][i-1],f[h][i],0); add(g[h][i],g[h][i-1],0); add(g[h][i],g[dp[h][i-1]][i-1],0); } else break; } } ll lca(ll x,ll y){ if(dep[x]<dep[y]) swap(x,y); for(ll i=32768,cntt=15;cntt>=0;i/=2,cntt--) if(dep[x]-i>dep[y]) x=dp[x][cntt]; if(dep[x]!=dep[y]) x=dp[x][0]; if(x==y) return x; for(ll i=32768,cntt=15;cntt>=0;i/=2,cntt--) if(dp[x][cntt]!=dp[y][cntt]){ x=dp[x][cntt]; y=dp[y][cntt]; } return dp[x][0]; } void Dijkstra(){ for(ll i=0;i<=3000000;i++) dis[i]=0x3f3f3f; dis[s]=0; priority_queue<pair<ll,ll>,vector<pair<ll,ll> >,greater<pair<ll,ll> > > q; q.push(make_pair(0,s)); while(!q.empty()){ ll x=q.top().second; q.pop(); if(v[x]) continue; v[x]=true; for(ll i=home[x];i;i=ed[i].next){ ll t=ed[i].to; if(dis[t]>dis[x]+ed[i].w){ dis[t]=dis[x]+ed[i].w; q.push(make_pair(dis[t],t)); } } } } int main(){ //freopen("C:\\Users\\Administrator\\Desktop\\1.txt","w",stdout); scanf("%d %d %d",&n,&m,&s); hmcnt=n; for(ll i=1;i<=n;i++) dp[i][0]=dp[i][1]=i; for(ll i=1;i<=m;i++){ ll t; scanf("%d",&t); if(t==1){ ll u1,u2,v1,v2,w; scanf("%d %d %d %d %d",&u1,&v1,&u2,&v2,&w); if(found(u1)==found(v1)&&found(u2)==found(v2)){ cnt++; e[cnt].w=w; e[cnt].x1=u1; e[cnt].y1=v1; e[cnt].x2=u2; e[cnt].yy2=v2; } } else{ ll u,v,w; scanf("%d %d %d",&u,&v,&w); ll xx=found(u),yy=found(v); if(xx!=yy){ dp[xx][0]=yy; add(u,v,w); add(v,u,w); } } } for(ll i=1;i<=n;i++) for(ll j=0;j<=16;j++) dp[i][j]=0x3f3f3f3f; for(ll i=1;i<=n;i++) if(!v[i]) dfs(i,0); for(ll i=1;i<=n;i++) v[i]=false; for(ll i=1;i<=cnt;i++){ ll k1=lca(e[i].x1,e[i].y1),k2=lca(e[i].x2,e[i].yy2); vector<ll> l,r; ll ppp,qqq; ppp=e[i].x1,qqq=k1; while(dep[ppp]>dep[qqq]){ ll rj=-1; for(ll k=32768,j=15;j>=1;j--,k/=2){ if(dep[ppp]-k+1>=dep[qqq]&&dep[ppp]%k==0){ rj=j; break; } } if(rj>=1){ l.push_back(f[ppp][rj]); ppp=dp[ppp][rj]; } else{ l.push_back(ppp); ppp=dp[ppp][0]; } } if(ppp==qqq){ l.push_back(ppp); } ppp=e[i].y1,qqq=k1; while(dep[ppp]>dep[qqq]){ ll rj=-1; for(ll k=32768,j=15;j>=1;j--,k/=2){ if(dep[ppp]-k+1>=dep[qqq]&&dep[ppp]%k==0){ rj=j; break; } } if(rj>=1){ l.push_back(f[ppp][rj]); ppp=dp[ppp][rj]; } else{ l.push_back(ppp); ppp=dp[ppp][0]; } } if(ppp==qqq) l.push_back(ppp); ppp=e[i].x2,qqq=k2; while(dep[ppp]>dep[qqq]){ ll rj=-1; for(ll k=32768,j=15;j>=1;j--,k/=2){ if(dep[ppp]-k+1>=dep[qqq]&&dep[ppp]%k==0){ rj=j; break; } } if(rj>=1){ r.push_back(g[ppp][rj]); ppp=dp[ppp][rj]; } else{ r.push_back(ppp); ppp=dp[ppp][0]; } } if(ppp==qqq) r.push_back(ppp); ppp=e[i].yy2,qqq=k2; while(dep[ppp]>dep[qqq]){ ll rj=-1; for(ll k=32768,j=15;j>=1;j--,k/=2){ if(dep[ppp]-k+1>=dep[qqq]&&dep[ppp]%k==0){ rj=j; break; } } if(rj>=1){ r.push_back(g[ppp][rj]); ppp=dp[ppp][rj]; } else{ r.push_back(ppp); ppp=dp[ppp][0]; } } if(ppp==qqq) r.push_back(ppp); ++hmcnt; for(ll j=0;j<l.size();j++) add(l[j],hmcnt,e[i].w); for(ll k=0;k<r.size();k++) add(hmcnt,r[k],0); } Dijkstra(); for(ll i=1;i<=n;i++) printf("%d ",(dis[i]!=0x3f3f3f)?dis[i]:-1); return 0; }
Lg P5344.
用时 年 月 日到 月 日。
写的时间次长的垃圾题目,用了两天,
我好菜啊#include<bits/stdc++.h> using namespace std; #define ll long long string str[100100]; int s2[100100]; int cnt,siize[510010]; int s[510100][26],ans[100100],vis[510100]; int insert(string x,int yy){ int len=x.length(),now=0,ret=yy; for(int i=1;i<=len;i++){ if(s[now][x[i-1]-'a']==0) s[now][x[i-1]-'a']=++cnt; now=s[now][x[i-1]-'a']; ret=min(ret,yy-vis[now]); } vis[now]=yy; return ret; } void insert2(string x,int yy){ int len=x.length(),now=0; for(int i=1;i<=len;i++){ if(s[now][x[i-1]-'a']==0) s[now][x[i-1]-'a']=++cnt; now=s[now][x[i-1]-'a']; } vis[now]=yy; } void dfs(int p){ siize[p]=(vis[p]>0); for(int i=0;i<26;i++) if(s[p][i]!=0){ dfs(s[p][i]); siize[p]+=siize[s[p][i]]; } } struct node{ int x,num; }; bool cmp(node aa,node bb){ if(aa.num==0) return false; if(aa.num!=bb.num) return aa.num<bb.num; return aa.x<bb.x; } int did(int p,int *f){ int f2[siize[p]+1]; int cntt=0,cnttt=0; for(int i=0;i<26;i++){ if(s[p][i]==0) continue; if(vis[s[p][i]]) f[++cntt]=s[p][i]; else cnttt+=did(s[p][i],&f2[cnttt]); } for(int i=cntt+1;i<=cntt+cnttt;i++){ f[i]=f2[i-cntt]; } return cntt+cnttt; } int cnt2=0; void init(int p){ if(vis[p]) s2[++cnt2]=vis[p]; int nuum=26; priority_queue<pair<int,int>,vector<pair<int,int> >,greater<pair<int,int> > > gt; for(int i=0;i<26;i++){ if(s[p][i]==0){ nuum--; continue; } if(vis[s[p][i]]==0){ nuum--; int f[siize[p]+1]; int len=did(s[p][i],&f[0]); for(int i=1;i<=len;i++){ gt.push(make_pair(siize[f[i]],f[i])); nuum++; } } else{ gt.push(make_pair(siize[s[p][i]],s[p][i])); } } while(!gt.empty()){ init(gt.top().second); gt.pop(); } } int main(){ int n; cin>>n; for(int i=1;i<=n;i++){ cin>>str[i]; int len=str[i].length(); for(int j=1;j*2<=len;j++) swap(str[i][j-1],str[i][len-j]); } for(int i=1;i<=n;i++){ insert2(str[i],i); } dfs(0); init(0); for(int i=0;i<=510099;i++){ for(int j=0;j<26;j++) s[i][j]=0; vis[i]=0; } cnt=0; for(int i=1;i<=n;i++){ ans[i]=insert(str[s2[i]],i); } ll rans=0; for(int i=1;i<=n;i++) rans+=ans[i]; cout<<rans; return 0; }
极度垃圾的水题,就是一道 Trie 字典树。。。
马蜂还算良好罢。
奸诈的CCF。。。
还有CSP:
以及:
-
Recent Activities
- 10.6 提高组模拟赛 OI
- 10.4 提高组模拟赛 OI
- 国庆提高组30题(1~3号) IOI
- 10.5 练习 IOI
- 周五分享 IOI
- 20240910集训 IOI(Strict)
- 保送生第四周 点分治 Assignment
- 保送生第三周 CDQ分治 Assignment
- 保送生第二周 高维前缀和 FWT Assignment
- 保送生第一周 矩阵快速幂 Assignment
- 训练 IOI
- 并查集与Kruskal重构树 IOI
- NOIP 模拟赛(八)system test OI
- NOIP 模拟赛(八)pretest IOI
- [订正] 多校2024第9场 Assignment
- NOIP 模拟赛(六) OI
- NOIP 训练赛(七)HARD OI
- NOIP 训练赛 (IOI赛制) IOI
- NOIP 2024 模拟赛(五)hard OI
- NOIP2024 模拟赛(四)hard OI
- NOIP 2024 模拟赛(三) OI
- 8月7日 基环树 IOI
- 部分分练习 IOI
- NOIP2024 模拟赛(二) OI
- NOIP2024 模拟赛(一) OI
- [订正]多校2024第3场 第4场 Assignment
- [订正]多校2024第1场 第2场 Assignment
- 暑期康复训练一 IOI
- 暑假集训第二阶段 ACM/ICPC
- 暑期康复训练二 IOI
- 2023-2024第二学期初二信息竞赛组期末考 IOI
- 20240604集训 IOI
- 20240528集训 IOI
- 2024水题过家家 IOI
- 20240521集训 IOI
- 2023-2023下学期初二竞赛组期中考 OI
- 20240507集训_ IOI
- 20240409集训 IOI
- 20240319集训 IOI
- 20240312集训 IOI
- 20240305集训 IOI
- 20240123 前缀和、差分、离散化难题 Ledo
- 20240122 CF div2.1673 IOI
- 20240122 CF div3.1811 IOI
- 20240121CFdiv3.1881 ACM/ICPC
- 20240120字符串专题模板 IOI
- 20240116杂题选讲 IOI
- 寒假集训1 Assignment
- 20240102集训 IOI
- 2023上学期初二竞赛组期末考 OI
- 20231212集训 IOI
- 初二竞赛组作业——主席树 Assignment
- NOIP模拟赛(八) IOI
- 20231114集训 OI
- 初二竞赛组作业——线段树合并 Assignment
- 20231107集训 OI
- 动态规划选讲(一) IOI
- 2023上学期初二竞赛组期中考 OI
- 信心赛 IOI
- 赛前十题 IOI
- CSP模拟 IOI
- 20231018比赛 OI
- 20231017集训 OI
- CSP-J 前两题真题汇总 Ledo
- 20231010集训 OI
- 虚假的比赛 IOI
- 国庆集训S组模拟赛2 OI
- 国庆集训S组模拟赛1 OI
- 国庆集训模拟赛(普及) OI
- HFI 图灵社 国庆欢乐赛 div2 OI
- HFI 图灵社 国庆欢乐赛 div1 OI
- 初二信息竞赛组——斜率优化 Assignment
- 9月19日周二晚上集训赛 IOI
- 初二竞赛组作业——DP复习 Assignment
- S组初赛模拟题 OI
- 提高A组-题目分享 Assignment
- UOI-R2重现赛 IOI
- COCI 21.2 IOI
- 单调队列优化DP Assignment
- 信息选修课(普及/提高)期末考 IOI
- 平衡树 Assignment
- 水题过家家 IOI
- 状压DP堂练 Assignment
- 20230511练习 Assignment
- DP堂练20230424 Assignment
- 初一期中考 IOI
- 初一竞赛组DP堂上复习题 Assignment
- 初一竞赛组状压DP堂上练习 Assignment
- 初一竞赛组排序+DP堂上练习 Assignment
- 初一下第七周作业:排序 Assignment
- 初一竞赛组换根DP堂上练习 Assignment
- 初一信息竞赛组kmp堂上练习 Assignment
- 初中信息竞赛组AC自动机 Assignment
- 初一下第六周作业: 函数与递归 Assignment
- 初一下第五周作业: 二分 Assignment
- 初中竞赛组树形DP2 Assignment
- 初一下第四周作业 容斥原理 Assignment
- 初中信息竞赛组-Trie Assignment
- 初中竞赛组树形DP1 Assignment
- 初一下第三周作业: 函数 Assignment
- 信息选修课第二周练习 Assignment
- 22年秋季 初一竞赛组期末考 OI
- 22年秋季 初一上期末考 OI
- 初一竞赛组数位DP Assignment
- 初一竞赛组作业——DP经典题 Assignment
- 初一年级数组3 Assignment
- 初一年级数组2 Assignment
- 初一年级数组1 Assignment
- 初一年级循环语句4 Assignment
- NOIP模拟赛1 OI
- 初一年级循环语句3 Assignment
- 初一竞赛组区间DP Assignment
- 初中选修课期中考 IOI
- 上学期竞赛组期中考试(初一) IOI
- 初一上学期期中考试机试(1班2班) IOI
- 初一上学期期中考试笔试(1班2班) OI
- 初一年级循环语句2 Assignment
- 初一竞赛班背包DP作业 Assignment
- 初一竞赛班动态规划作业2 Assignment
- 初一年级if语句 Assignment
- 周四提高比赛3 IOI
- 初一3班9月26日课堂作业 Assignment
- 初一竞赛班作业 Assignment
- 初一2班课堂作业 Assignment
- 周四提高比赛1 IOI