欢乐纪中A组赛【2019.8.7】
生活随笔
收集整理的這篇文章主要介紹了
欢乐纪中A组赛【2019.8.7】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
在短暫的比賽時間中,我發現本菜雞越是功于心計想ACACAC,越是拿不到分,所以。。。
我不寫比賽了JOJO!JOJO!JOJO!
成績
JJJ表示初中,HHH表示高中后面加的是幾年級
| 141414 | (H?2)HJW(H-2)HJW(H?2)HJW | 190190190 | 505050 | 100100100 | 404040 |
| 252525 | (H?1)ZZY(H-1)ZZY(H?1)ZZY | 160160160 | 505050 | 100100100 | 101010 |
| 323232 | (J?3)WYC(J-3)WYC(J?3)WYC | 140140140 | 000 | 100100100 | 404040 |
| 515151 | (J?3)LRZ(J-3)LRZ(J?3)LRZ | 100100100 | 505050 | 505050 | 000 |
| 515151 | (J?3)XXY(J-3)XXY(J?3)XXY | 100100100 | 505050 | 505050 | 000 |
| 676767 | (H?1)QYH(H-1)QYH(H?1)QYH | 808080 | 000 | 505050 | 303030 |
| 757575 | (J?3)HZB(J-3)HZB(J?3)HZB | 707070 | 505050 | 202020 | 000 |
| 757575 | (H?1)WHF(H-1)WHF(H?1)WHF | 707070 | 505050 | 000 | 202020 |
| 757575 | (H?2)LZX(H-2)LZX(H?2)LZX | 707070 | 505050 | 202020 | 000 |
| 868686 | (J?3)ZYC(J-3)ZYC(J?3)ZYC | 505050 | 505050 | 000 | 000 |
| 929292 | (J?3)LW(J-3)LW(J?3)LW | 404040 | 404040 | 000 | 000 |
| 959595 | (J?3)XJQ(J-3)XJQ(J?3)XJQ | 303030 | 303030 | 000 | 000 |
| 105105105 | (J?3)HJQ(J-3)HJQ(J?3)HJQ | 101010 | 101010 | 000 | 000 |
| 112112112 | (H?2)YJY(H-2)YJY(H?2)YJY | 000 | 000 | 000 | 000 |
正題
T1:jzoj6275?[NOIPT1:jzoj6275-[NOIPT1:jzoj6275?[NOIP提高組模擬1]1]1]小LLL的數列【矩陣乘法,,,歐拉定理】
鏈接:
https://blog.csdn.net/Mr_wuyongcong/article/details/98773342
T2:jzoj6274?[NOIPT2:jzoj6274-[NOIPT2:jzoj6274?[NOIP提高組模擬1]1]1]夢境【貪心,,,堆】
鏈接:
https://blog.csdn.net/Mr_wuyongcong/article/details/98759584
T3:jzoj6276?[NOIPT3:jzoj6276-[NOIPT3:jzoj6276?[NOIP提高組模擬1]1]1]樹【線段樹,,,掃描線,,,倍增】
鏈接:
https://blog.csdn.net/Mr_wuyongcong/article/details/98762651
總結
今天T1T1T1一看矩陣乘法擴展歐拉定理(然而并不用擴展)寫了半天發現思路全錯(其實接近正確),然后就去看T2T2T2發現貪心性質十分顯然但是過程比較麻煩。先寫了個線段樹結果發現并不用寫,后來寫了個堆就切了。然后T3T3T3開始以為是點分治,但是后來發現我的方法得加一個主席樹就不寫了,然后發現菊花圖和鏈特別好寫就寫了,然后結果菊花圖寫掛了只拿到了404040。
看題預估分50+50+70=12050+50+70=12050+50+70=120
做題預估分10+100+70=18010+100+70=18010+100+70=180
實際獲得分0+100+40=1400+100+40=1400+100+40=140
SomeofcodeSome\ of\ codeSome?of?code
T340ptscodeT3\ 40pts\ codeT3?40pts?code
#include<cstdio> #include<cstring> #include<vector> #include<algorithm> using namespace std; const int N=100100; int n,m,p[N][2],dfn[N],rfn[N],cnt,tot,out[N],ls[N],ans,v[N]; vector<int> d[N]; struct Edge_node{int to,next; }a[N*2]; void addl(int x,int y) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;out[x]++; } void dfs(int x,int fa) {dfn[++cnt]=x;rfn[x]=cnt;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==fa) continue;dfs(y,x);} } int main() {freopen("tree.in","r",stdin);freopen("tree.out","w",stdout);scanf("%d%d",&n,&m);for(int i=1;i<n;i++){int x,y;scanf("%d%d",&x,&y);addl(x,y);addl(y,x);}for(int i=1;i<=m;i++){int x,y;scanf("%d%d",&x,&y);d[x].push_back(i);d[y].push_back(i);p[i][0]=x;p[i][1]=y;}if(out[1]==n-1){for(int i=2;i<=n;i++){int num=n-1;for(int j=0;j<d[i].size();j++){bool flag=(d[i][j]>m),mark=d[i][j]-flag*m,y=p[mark][flag^1];if(y==1){num=0;break;}num--;}ans+=num;}printf("%d",ans);return 0;}for(int i=1;i<=n;i++)if(out[i]==1){dfs(i,0);break;}for(int i=1;i<=m;i++){p[i][0]=rfn[p[i][0]];p[i][1]=rfn[p[i][1]];if(p[i][0]>p[i][1])swap(p[i][0],p[i][1]);}int l=0;for(int i=1;i<=n;i++){for(int j=0;j<d[dfn[i]].size();j++){int val=d[dfn[i]][j];v[val]++;if(v[val]<2) continue;l=max(l,p[val][0]);}ans+=max(i-l-1,0);}printf("%d",ans); }總結
以上是生活随笔為你收集整理的欢乐纪中A组赛【2019.8.7】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 路由器怎么限制别人蹭网家里的路由器怎么限
- 下一篇: P4318,bzoj2440-完全平方数