先佔個坑,防鴿html
萬一過不了初賽怎麼辦(歡迎山前劉明)c++
流水帳太多 湊合看吧瀏覽器
Day -91學習
http://www.javashuo.com/article/p-oqslddrf-gc.html網站
http://www.javashuo.com/article/p-kmiyjtyc-gb.htmlspa
「***懼怕了,***嚇傻了,***傳瘋了」code
暑期集訓的最後一天htm
正當我瘋狂趕暑假做業prepare to do something excited時,CCF忽然搞了個大新聞:blog
「因爲某種緣由,由CCF主辦的全國青少年信息學奧林匹克聯賽NOIP(普及組及提升組)從2019起暫停。」http://www.noi.cn/newsview.html?id=932&hash=72F731排序
我*,要退役了。
Day -84
「非專業級軟件能力認證」橫空出世 http://www.noi.cn/newsview.html?id=938&hash=1A1F26
「不建議以功利的心態參加CSP認證」,你懂的。
啥也別說了,準備報名
Day -42
開始集訓,準備CSP-J1/S1
據說BJ要全面機試,題型全爲單選題,excited!
Day -30
BJ第一輪認證的考點安排出爐 上下午考點居然相距十幾km(按考號排序,原本能安排在一個地方的,結果前面有幾我的亂入。。。)然而我還不是最慘的
Day -28
複習了一夜模擬題,才發現過去一年啥都沒學
Day -27
上午在八十中考S1
路上耽誤了一點時間,跑到隔壁運動會了,匆匆忙忙跑進考場,已經09:26,立刻就開始了
拿到密碼條(監考老師水平極差,居然給我發錯了)
我*,網站登錄不上去啊(筆試大 法 好)這就是China Cheating Foundation?設想一下明年全國機試的盛況
Chrome、Firefox瀏覽器來回刷,09:37終於登錄進入網頁,開始作題
題目難度還行,自我感受能及格
機試延長了1個小時,最晚12:30交卷,12:00能夠提早交卷離開;提交的時候又卡了好幾分鐘
下午在rdfz考J1,直接在圖書館閱覽室裏考
網不錯,題很水,八九不離十
Day -22
BJ機試效率就是高,立刻就出成績了
入門組得了84分,提升組61.5分,分數不高,能過就行
算上B類名額,咱們機房差很少都能過了
據說JX只要不缺考不爆零就能進第二輪?啊哈哈哈
Day -20
全機房被教練請去喝茶 仍是那個永恆的主題:我太蔡了
上午頹了幾分鐘天文競賽,繼續回機房集訓
Day -6
期中考後涼涼祭 好在CSP比NOIP晚一週 還有喘息的機會
今天體驗了NOI Linux,又來了一套模擬題,*,這不該該了,KMP都不會了,CSP-S2爆零預警
Day -4
CJX、SZM、CZD、SAJ、ZGYM等若干同窗今起享受停課備賽高規格待遇
Day -3
教練一番意味深長的訓話。。。
Day 0
下午5時許,學校機房正式實施清場,CSP-J2/S2前最後一次訓練到此結束,機房同窗互相送別
我又大概看了幾眼模板就準備上考場了
Day 1
上午S2 D1,早早來到考場
試題密碼:Ren2Zhen0Si1Kao9?(認真思考2019)
T1,格雷碼(code),大概是CCF塞分題,掃了一眼,根據直覺思惟,是一道基本的找規律題目
看到數據範圍,提升警戒,使用了long long,測過了「大樣例」就直接過了,無奈道高一尺魔高一丈(蛤?2^64爆LL了?基本學習經驗又不熟了)
#include<bits/stdc++.h> using namespace std; long long a[65]; int main() { //freopen("code.in","r",stdin); //freopen("code.out","w",stdout); int n; long long k; scanf("%d %lld",&n,&k); long long x=2; for(int i=1;i<=n;i++) { x<<=1; if(k%x>=x/4 && k%x<x/4*3) a[i]=1; } for(int i=n;i>=1;i--) printf("%d",a[i]); return 0; }
「指望」得分:100
T2,括號樹(brackets),樹上的括號匹配,不會正解,只會玄學暴力
#include<bits/stdc++.h> using namespace std; char a[500005],b[500005]; int f[500005]; int x[500005],y[500005]; int main() { //freopen("brackets.in","r",stdin); //freopen("brackets.out","w",stdout); int n; scanf("%d",&n); for(int i=1;i<=n;i++) cin>>a[i]; for(int i=2;i<=n;i++) scanf("%d",&f[i]); int res; f[1]=0; for(int i=1;i<=n;i++) { memset(b,0,sizeof(b)); memset(x,0,sizeof(x)); memset(y,0,sizeof(y)); int j=i,k=0,ans=0; while(j) { b[++k]=a[j]; x[k]=x[k-1],y[k]=y[k-1]; if(a[j]==')') x[k]++; if(a[j]=='(') y[k]++; j=f[j]; } for(int l=1;l<k;l++) { for(int r=l+1;r<=k;r++) { if(x[r]-x[l-1]!=y[r]-y[l-1]) continue; bool xy=1; for(int p=l;p<=r;p++) { if(x[p]-x[l-1]<y[p]-y[l-1]) { xy=0; break; } } if(xy) ans++; } } if(i==1) res=ans; else res=res^(ans*i); } printf("%d",res); return 0; }
「指望」得分:玄學
T3,樹上的數(tree),本題難度達到了NOIp/CSP史上的新高度,曠古爍今,史上首次出現黑題,乾脆沒寫,0分滾粗
因而D1「指望」得分:100+玄學+0
下午就是S2了,目標AK
試題密碼:=zhu1YI1JIAN1cha9(注意檢查1119)
T1,數字遊戲(number),CSP-J元年,塞分題居然如此簡單
#include<bits/stdc++.h> using namespace std; char a[8]; int main() { //freopen("number.in","r",stdin); //freopen("number.out","w",stdout); cin>>a; int s=0; for(int i=0;i<=7;i++) { if(a[i]=='1') s++; } printf("%d",s); return 0; }
「指望」得分:100
T2,公交換乘(transfer),不假思索地進行大模擬
#include<bits/stdc++.h> using namespace std; int a[100005],b[100005],c[100005]; bool f[100005]; int main() { //freopen("transfer.in","r",stdin); //freopen("transfer.out","w",stdout); int n; scanf("%d",&n); int ans=0; for(int i=1;i<=n;i++) scanf("%d%d%d",&a[i],&b[i],&c[i]),ans+=b[i]; int t=1; for(int i=1;i<=n;i++) { if(a[i]==1) { int x=-1; for(int j=i-1;j>=t;j--) { if(c[i]-c[j]>45) { t=j;break; } if(a[j]==0&&b[i]<=b[j]&&!f[j]) x=j; } if(x!=-1) f[x]=1,ans-=b[i]; } } printf("%d",ans); return 0; }
「指望」得分:100
T3,記念品(souvenir),聽說是個揹包。我基本經驗又不熟了。我不該該了。
#include<bits/stdc++.h> #define INF 214748364 using namespace std; int a[105][105]; int main() { //freopen("souvenir.in","r",stdin); //freopen("souvenir.out","w",stdout); int t,n,m; scanf("%d%d%d",&t,&n,&m); a[0][1]=INF; for(int i=1;i<=t;i++) { for(int j=1;j<=n;j++) scanf("%d",&a[i][j]); } if(t==1) { printf("%d",m); return 0; } int k; for(int i=1;i<=t;i++) { if(a[i][1]<=a[i-1][1]&&a[i][1]<a[i+1][1]) { k=m/a[i][1];m%=a[i][1]; } if(a[i][1]>a[i-1][1]&&a[i][1]>=a[i+1][1]) { m+=k*a[i][1];k=0; } } printf("%d",m); return 0; }
「指望」得分:25
T4,加工零件(work),我沒了,暴力出不了奇蹟,今年題這麼水,想必會有成百上千的OIer AK CSP-J2,我1=估計沒戲了(退役預警
#include<bits/stdc++.h> using namespace std; int n,m,q; int a[1005][1005]; int b[1005],c[1005]; bool f[1005][1005]; int maxn=0; void dfs(int x,int y) { if(y>maxn) return; f[x][y]=1; for(int i=1;i<=n;i++) { if(a[x][i]) dfs(i,y+1); } } int main() { //freopen("work.in","r",stdin); //freopen("work.out","w",stdout); scanf("%d%d%d",&n,&m,&q); for(int i=1;i<=m;i++) { int x,y; scanf("%d%d",&x,&y); a[x][y]=a[y][x]=1; } for(int i=1;i<=q;i++) { scanf("%d%d",&b[i],&c[i]); maxn=max(maxn,c[i]); } dfs(1,0); for(int i=1;i<=q;i++) { if(f[b[i]][c[i]]) printf("Yes\n"); else printf("No\n"); } return 0; }
「指望」得分:40
CSP-J2「指望」得分:100+100+25+40=265
Day 2
賽前的小插曲,因爲身份證找不到了,差點所以退役
今天居然有同窗沒來?彪悍啊
試題密碼:@zhuajin1SHIJIAN7(抓緊時間17)
T1,Emiya 家今天的飯(meal),本來按照三維dp去作,走上了光明大道,結果。。。沒推出來,「指望」能得到4分的好 成 績
#include<bits/stdc++.h> using namespace std; int a[105][2005]; int main() { //freopen("meal.in","r",stdin); //freopen("meal.out","w",stdout); int n,m; scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) scanf("%d",&a[i][j]); } int ans=0; if(n==2&&m==2) { if(a[1][2]&&a[2][1]) ans++; if(a[1][1]&&a[2][2]) ans++; printf("%d",ans); } else printf("3"); return 0; }
T2,劃分(partition),基本算是輕鬆搞出了O(n^2)的dp,再進一步很難
#include<bits/stdc++.h> using namespace std; long long a[500005],s[500005],f[500005]; int l[500005]; int main() { //freopen("partition.in","r",stdin); //freopen("partition.out","w",stdout); memset(f,127,sizeof(f)); f[0]=0; int n,t; scanf("%d%d",&n,&t); for(int i=1;i<=n;i++) scanf("%lld",&a[i]),s[i]=s[i-1]+a[i]; f[1]=a[1]*a[1]; for(int i=1;i<=n;i++) { for(int j=0;j<i;j++) { if(f[j]+(s[i]-s[j])*(s[i]-s[j])<f[i]&&s[i]-s[j]>=s[j]-s[l[j]]) { f[i]=f[j]+(s[i]-s[j])*(s[i]-s[j]); l[i]=j; } } } printf("%lld",f[n]); return 0; }
「指望」得分:64
T3,樹的重心(centroid),不會
「指望」得分:0
D2的指望得分:4+64+0=68
考完回去趕忙肝做業了,暫時忘掉即將退役的痛苦
Day 4
BJ公示程序了,因而放到luogu上,用民間數據自測一下
先說結果:
CSP-S2
D1 T1 75?
D1 T2 30
D1 T3 0
D2 T1 4
D2 T2 64
D2 T3 0
總分:75+30+0+4+64+0=173(我太蔡了qwq要被開除社籍了
CSP-J2
T1 100
T2 100
T3 25
T4 40
總分:100+100+25+40=265(一分不差 是否是有點蔡了
非 標 準 結 局
D1T1居然得到了75分的好成績?問題是,n>=63是就會RE。。。
(未完待續)