1. 程式人生 > >學習第七天(揭露進入NOI的特殊方法)

學習第七天(揭露進入NOI的特殊方法)

???

為什麼上來就有三個問號?
這也說明今天的不同
標題你們也看了
沒錯
我們就是要來講講省選落選,怎麼進NOI。
宣告:以下事件沒有任何批判的意思,只是闡述事實
之前看到NOI的參賽選手分為ABCD四類
於是就好奇這四類有什麼區別
於是上網搜了一下,找到如下結果:
搜尋結果

很明顯,我被右下角的回覆給吸引了
沒辦法,我是個窮鬼,這個W一開始還是震到我了
於是我開始調查
在官網上找到了CD類名額分配方案的檔案,但其中C類的規定比較模糊:
C類名額分配辦法

什麼算巨大貢獻呢?
給CCF捐獻10W,好像的確是個重大的貢獻
似乎名正言順
而且有如下一個條款:
條款

所以還是要繳費的
但是具體是多少並沒有提到。
但我緊接著就發現D類名單上有一個我認識的人,於是果斷的問他:
真是對話

出於保護隱私,該糊的都糊掉了
這麼一看的確是坐實了
既然D類是2W,那麼我覺得那個10W恐怕也是真的。

當然,這並沒有什麼黑暗的東西,其實透明度還是很好的
雖然價格不菲,但的確為大家提供了一個途徑,而且CCF也不容易,畢竟不是一個盈利性的組織。
反正我是沒機會了,今年就要AFO了
祝你們好運!

資訊學

第一題:尋找主人

這一題很水,直接用最小表示法即可
尋找主人題解

我就不另講了
程式碼如下:

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace
std; const int maxn=1000005; char a[maxn],b[maxn]; //int n; int getmin(char* c){ int n=strlen(c); int i=0,k=0; int j=1; while(i<n&&j<n){ if(c[i]<c[j]){ j++; }else if(c[i]>c[j]){ i=j++; }else{ for(k=1;k<n;k++){ if
(c[(i+k)%n]<c[(j+k)%n]){ j=(j+k+1); break; }else if(c[(i+k)%n]>c[(j+k)%n]){ i=j; j=(j+k+1); break; } } } } return min(i,j); } int main(){ scanf("%s%s",a,b); int aa=getmin(a); int bb=getmin(b); int n=strlen(a); for(int i=0;i<n;i++){ if(a[(aa+i)%n]!=b[(bb+i)%n]){ printf("No"); return 0; } } printf("Yes\n"); for(int i=0;i<n;i++){ printf("%c",a[(aa+i)%n]); } return 0; }

第二題:Tab

這道題,哇,波蘭的
好像也就一條有趣的性質就能解決
那就是無論怎麼變換
原來在同一行的,變換後還在同一行
原來在同一列的,變換後還在同一列
而且,請注意,元素各不相同!!!
(我一開始沒有看見,折騰了一會)
所以我們對於第一個矩陣,記錄他的每一個元素的位置
然後讀入第二個矩陣的時候判斷即可
程式碼如下:

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int T,n,m;
int visx[2000005],visy[2000005];
int a[1005][1005];
int b;
const int maxn=1000000;
int main(){
    scanf("%d",&T);
    while(T--){
        scanf("%d%d",&n,&m);
        memset(visx,-1,sizeof(visx));
        memset(visy,-1,sizeof(visy));
        bool jud=true;
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                scanf("%d",&b);
                visx[b+maxn]=i;
                visy[b+maxn]=j;
            }
        }
        for(int i=0;i<n;i++){
            for(int j=0;j<m;j++){
                scanf("%d",&a[i][j]);
                if(visx[a[i][j]+maxn]==-1||visy[a[i][j]+maxn]==-1){
                    jud=false;
                }else if(visx[a[i][j]+maxn]!=visx[a[i][0]+maxn]||visy[a[i][j]+maxn]!=visy[a[0][j]+maxn]){
                    jud=false;
                }
            }
        }
        if(jud){
            printf("TAK\n");
        }else{
            printf("NIE\n");
        }


    }
    return 0;
} 

第三題:嘿嘿嘿,明天繼續

物理

找了去年清華的夏令營卷子做了一下,感覺還可以

數學

今天,把昨天的卷子簡單訂正了一下
然後就開始愉快的刷題了
在刷數學的時候,有了自己的一些感想
其實有時候刷題要比思考簡單的多
事實上,思考有時是很難受的
而刷題不需要思考
所以有時候刷題也會感覺到快樂
但也不能刷題過多
因為總會有迷茫的那一天

總結

沒錯,我又把面試給忘了
呵呵
明日復明日,明日何其多
既然明天這麼多,那麼我們花費一個明天來做這個事,應該可以吧?
明天加油。