2022五一爆零記總結二

2022-10-10 21:00:15 字數 3378 閱讀 9519

五一第三天 ,被關在學校不能出去玩qaq

第一題結論推炸了,打表看到1、2、5該想到是卡特蘭數的

第二題想到過分塊但是覺得太麻煩於是就沒有打誒嘿

第三題題目做法是推出來了的,容斥dfs寫炸最後竟然還有20分

數列(sequence.c/cpp/pas)

1 題目描述

我們稱乙個長度為 2n 的數列是有趣的,當且僅當該數列滿足以下三個條件:

(1)它是從 1 到 2n 共 2n 個整數的乙個排列;

(2)所有的奇數項滿足 a1

**如下

#includeusing namespace std;

inline int read()

while(w>='0'&&w<='9')

return f*j;

}const int n=2000001;

bool use[n];

int zhi[n],f[n],tail,n,mod;

int sumi(int sum,int num)

return ansn;

}signed main()

for(int i=1;i<=tail;i++)

}if(zhi[i]*u>n+1)

}} }

long long ans=1;

for(int i=1;i<=tail;i++)

printf("%d",ans);

return 0;

}

乘法 (mul.c/cpp/pas)

1 題目描述

輸入乙個 n ∗ n 的矩陣 a,請求出 a^1+a^2+...+a^k 對 m 取模的結果。

2 輸入格式

第一行為三個正整數 n, k, m,含義如上所述;

接下來 n 行,每行輸入 n 個非負整數,用於描述矩陣 a。

3 輸出格式

輸出 n 行,每行 n 個整數,表示答案矩陣。

4 樣例輸入

2 2 5

2 10 3

5 樣例輸出

1 10 2

6 資料範圍與約定

對於前 30% 的資料,k<=30;

對於另外 30% 的資料,n=1;

對於 100%的資料,n<=30, k<=10^9, m<=10^4

4,輸入矩陣的數在 0~m-1 範圍內。

不得不說矩陣套矩陣然後推快速冪的方法真的是非常的妙啊...

**如下

#includeusing namespace std;

inline int read()

while(w>='0'&&w<='9')

return f*j;

}const int n=31,m=32;

int n,k,mod;

struct matrix

} return b;

} matrix operator +(const matrix &a)const

} return b;

}}mid,yuan,kong;

struct node

} return b;

}}sta;

node sumi(int tim)

return ansn;

}signed main()

return 0;

}

生物 (creature.c/cpp/pas)

1 題目描述

在乙個無限長的一維空間中,存在著乙個奇特的生物,它的身體上順次有著 n + 1 個刻印,每個刻印可以用乙個正整數來表示。已知它最後乙個刻印的值為m,而其它 n 個刻印的值均不超過 m,並且兩個刻印的值可以相同。

這個生物每次可以選中它的任意乙個刻印,並且按照這個刻印的值 k,選擇向它所在位置的前或後閃爍 k 個單位。我們稱可以使得這個生物能夠通過若干次閃爍,到達一維空間任何乙個位置的刻印序列為超刻印序列。

現在刻印序列顯然一共有 m^n 種,為了研究這個生物,請你求出其中超刻印序列的數目。

2 輸入格式

僅一行兩個整數,分別為 n, m。

3 輸出格式

輸出一行乙個整數,表示超刻印序列的數目對 10^9+7 取模的結果。

4 樣例輸入

2 45 樣例輸出

126 資料範圍與約定

對於前 20%的資料,保證 n,m <= 5;

對於 100%的資料,保證 1<=n<=15,1<=m<=10^8。

一切的一切都源於ax+by=gcd(x,y)

**如下

#includeusing namespace std;

inline int read()

while(w>='0'&&w<='9')

return f*j;

}const int n=16,m=100000001,mod=1000000007;

int n,m,ans=1;

int mi[35],cut,zhi[10001],f[10001],tail,len;

int kkk[10001];

bool use[10001];

int sumi(int sum,int num)

return ansn;

}void rongchi(int aim,int tim,int nown,int front)

for(int i=front+1;i<=len;i++)

} return ;

}signed main()

n=read();m=read();

int a=m;

for(int i=1;i<=tail&&zhi[i]<=a;i++)

} if(a!=1)f[++len]=a;

memset(use,0,sizeof(use));

for(int i=1;i<=len;i++)rongchi(i,1,1,0);

ans=sumi(m,n);

long long ansn=0;

for(int i=1;i<=len;i++)

printf("%d",((ans-ansn)%mod+mod)%mod);

return 0;

}

長沙集訓day3(總結)(爆零記)

昨天晚上打了打codeforce,睡的比較晚,早上七點三十才起0.0 沒有找到今天題的ppt,就先不弄了。t1 題目大概就是乙個有許多腳的東西,每個腳都有他的初始位置和他的速度,每一次後面的腳超過前面的腳都會發生一次碰撞,讓你求出都有那個腳超過那個腳了。然後發生超越和被超越的腳組成兩個集合a,b。然...

遊記 CSP S 2021 爆零記

之前參加過 難度介於 j 組 基礎組 和 s 組 提高組 之間 的 lgr 13 scp 2021 第一輪 初賽 模擬,只拿了 47 分,當時還以為今年會不會連初賽都過不去,考完之後看來是洛谷的題太難了。今年的線上提交系統很坑,長時間不操作就會退出登入。還好中途學校老師有提醒先提交一部分,讓我發現已...

遊記 NOIP 2021 爆零記

尤拉尤拉尤拉尤拉尤拉尤拉尤拉尤拉,第一次參加 noip 尤拉尤拉尤拉尤拉尤拉尤拉尤拉尤拉。第一題比較簡單,用類似於篩質數的做法即可,鑑於 csp s 的 t1 寫掛,這從多花了點時間 其實沒有必要 最後猶豫了一下用樸素查法還是二分,隨機資料其實差不多,但想到有可能毒瘤資料,一直出 699998 這樣...