1109 NOIP 模擬考試

2022-02-11 19:17:43 字數 3037 閱讀 2107

noip2016 模擬賽

——那些年,我們學過的文化課

背單詞(word.c/cpp/pas)

【題目描述】

fqk 退役後開始補習文化課啦, 於是他開啟了英語必修一開始背單

詞。 看著滿篇的單詞非常頭疼, 而每次按照相同的順序背效果並不好,

於是 fqk 想了一種背單詞的好方法!他把單詞抄寫到乙個 n 行 m 列的

**裡,然後每天背一行或者背一列。他的複習計畫一共有 k 天,在

k 天後, fqk 想知道,這個**中的每個單詞,最後一次背是在哪一

天呢?【輸入格式】

第一行三個整數 k m n , , 。

接下來 k 行,每行的格式可能如下:

1. r ,表示當前天 fqk 背了第 r 行的單詞。

. 2 c ,表示當前天 fqk 背了第 c 列的單詞。

【輸出格式】

輸出包含 n 行, 每行 m 個整數, 表示每個格仔中的單詞最後一次背

是在哪天,如果這個單詞沒有背過,則輸出 0 。

【輸入樣例】

3 3 3

1 22 3

1 3【輸出樣例】

0 0 2

1 1 2

3 3 3

【資料範圍】

對於 % 30 的資料, 1000 , ,  k m n 。

對於 % 100 的資料, 100000 , 100000 , 5000 ,     k m n m n 。

【時空限制】

對於每個測試點,時間限制為  1 s,空間限制為  512mb 。

1 #include2 #include3

using

namespace

std;

4 inline const

intread()

8while(ch>='

0'&&ch<='9')

9return x*f;10}

11const

int n=1e5+10;12

intn,m,k,xx[n],yy[n];

13#define name "word"

14int

main()

23else26}

27for(int i=1;i<=n;i++)

31 printf("\n"

);32}33

fclose(stdin);

34fclose(stdout);

35return0;

36 }

脫水縮合

(merge.c/cpp/pas)

【題目描述】

fqk 退役後開始補習文化課啦, 於是他開啟了生物必修一開始複習

蛋白質,他回想起了氨基酸通過脫水縮合生成肽鍵,具體來說,乙個

氨基和乙個羧基會脫去乙個水變成乙個肽鍵。於是他腦洞大開,給你

出了這樣一道題:

fqk 將給你 6 種氨基酸和 m 個脫水縮合的規則,氨基酸用

' ' , ' ' , ' ' , ' ' , ' ' , ' ' f e d c b a 表示,每個規則將給出兩個字串 t s, ,其中

1 | | , 2 | |   t s ,表示 s 代表的兩個氨基酸可以通過脫水縮合變成 t 。然後

請你構建乙個長度為 n ,且僅由 ' ' , ' ' , ' ' , ' ' , ' ' , ' ' f e d c b a 構成的氨基酸序列,

如果這個序列的前兩個氨基酸可以進行任意一種脫水縮合, 那麼就可

以脫水縮合,脫水縮合後序列的長度將 1  ,這樣如果可以進行 1  n 次

脫水縮合,最終序列的長度將變為 1 ,我們可以認為這是乙個蛋白質,

如果最後的蛋白質為 ' 'a , 那麼初始的序列就被稱為乙個好的氨基酸序

列。 fqk 想讓你求出有多少好的氨基酸序列。

注:題目描述可能與生物學知識有部分偏差(即氨基酸進行脫水

縮合後應該是肽鏈而不是新的氨基酸),請以題目描述為準。

【輸入格式】

第一行兩個整數 q n, 。

接下來 q 行,每行兩個字串 t s, ,表示乙個脫水縮合的規則。

【輸出格式】

一行,乙個整數表示有多少好的氨基酸序列。

【輸入樣例】

3 5ab a

cc c

ca a

ee c

ff d

【輸出樣例】

4【樣例解釋】

一共有四種好的氨基酸序列,其脫水縮合過程如下:

"abb" "ab" "a"

"cab" "ab" "a"

"cca" "ca" "a"

"eea" "ca" "a"

【資料範圍】

對於 % 100 的資料, 36 , 6 2    q n 。資料存在梯度。

【時空限制】

對於每個測試點,時間限制為 s 2 ,空間限制為 mb 512 。

1 #include2 #include3 #include4

#define maxn 110

5using

namespace

std;

6int f[maxn][maxn][maxn],ans,r[maxn],n,m;bool vis[500010];7

char s[5],c[5];8

void dfs(int now,int x,inty)9

20for(int i=1;i<=6;i++)

21if(f[x][y][i]) dfs(now+1,i,r[now+1

]);22}23

void dfs(int

now)

2430

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

3136}37

intmain()

3849 dfs(1

);50 printf("

%d\n

",ans);

51fclose(stdin);

52fclose(stdout);

53return0;

54 }

NOIP模擬賽考試總結

noip模擬賽考試總結 這兩天我們進行了以小奇為主題的noip模擬賽 考試總結 第一題看出是乙個dp,但是前面的決策對後面有影響,百思不得其解時想到後面決策對前面沒有影響,所以從後面開始dp,每步取max。第二題看了半天都不會,交了乙個暴力演算法,得了0分,因為我把字首和取模了,比如 1 2 3 4...

考試總結 noip模擬10

不小心有咕掉了一段時間 這次考試咕掉的分數也是太多了 然後就是這次暴力完全沒有打滿 遺憾啊遺憾 入陣曲 前面的題目背景故意引導我們去往矩陣快速冪的方向去想 然而半毛錢關係沒有 其實就是維護字首和 二維的然後就有顯然的 mathcal o n 4 的暴力。然而我這個 sb 在考試之前認為沒有開 lon...

考試總結 noip模擬9

所以現在才更新 斐波那契 一看就是規律 然而我選擇了暴力 其實完全可以打表去找規律。然後就可以發現父親的順序也是斐波那契。就這 includeusing std cout using std endl define int long long define debug cout debug void...