藍橋杯第八屆省賽

2021-08-17 14:00:03 字數 1820 閱讀 8643

第4題

6x6的方格,沿著格仔的邊線剪開成兩部分。

要求這兩部分的形狀完全相同。

如圖:p1.png, p2.png, p3.png 就是可行的分割法。

試計算:

包括這3種分法在內,一共有多少種不同的分割方法。

注意:旋轉對稱的屬於同一種分割法。

請提交該整數,不要填寫任何多餘的內容或說明文字。

圖的dfs

按照兩部分分割開的線深度搜尋

vis[7][7]存放0/1,表示是否訪問過結點(圖中的十字)

#includeusing namespace std;

int vis[7][7];

int d_x[4]=;

int d_y[4]=;

int ans=0;

void dfs(int x,int y)

for(int i=0;i<4;i++) }}

int main()

int main()

f(a-1,b,c,n-1)+f(a,b-1,c,n-1)+f(a,b,c-1,n-1); // 填空

}int main()

第6題

請分析該解法的思路,並補全劃線部分缺失的**。

#includeusing namespace std;

#define n 256

int f(const char* s1, const char* s2)

} }return max;

}int main()

a[i-1][j-1]+1; //填空

if(a[i][j] > max) max = a[i][j];

}} }

return max;

}int main()

???沒懂,當是s1[i-1]!=s2[j-1]時,a[i][j]還是初始化的0啊,那麼s1[i-1]!=s2[j-1]時,a[i-1][j-1]也有可能是初始化的0呀??

第7題描述:正則問題

考慮一種簡單的正規表示式:

只由 x ( ) | 組成的正規表示式。

小明想求出這個正規表示式能接受的最長字串的長度。  

例如 ((xx|***)x|(x|xx))xx 能接受的最長字串是: ******,長度是6。

輸入----

乙個由x()|組成的正規表示式。輸入長度不超過100,保證合法。  

輸出----

這個正規表示式能接受的最長字串的長度。  

例如,輸入:

((xx|***)x|(x|xx))xx  

程式應該輸出:

6  資源約定:

峰值記憶體消耗(含虛擬機器) < 256m

cpu消耗  < 1000ms

請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。

注意:main函式需要返回0;

只使用ansi c/ansi c++ 標準;

不要呼叫依賴於編譯環境或作業系統的特殊函式。

所有依賴的函式必須明確地在原始檔中 #include

不能通過工程設定而省略常用標頭檔案。

提交程式時,注意選擇所期望的語言型別和編譯器型別。

第八屆藍橋杯省賽(包子湊數)

小明幾乎每天早晨都會在一家包子鋪吃早餐。他發現這家包子鋪有n種蒸籠,其中第i種蒸籠恰好能放ai個包子。每種蒸籠都有非常多籠,可以認為是無限籠。每當有顧客想買x個包子,賣包子的大叔就會迅速選出若干籠包子來,使得這若干籠中恰好一共有x個包子。比如一共有3種蒸籠,分別能放3 4和5個包子。當顧客想買11個...

藍橋杯第八屆省賽 日期問題

日期問題 小明正在整理一批歷史文獻。這些歷史文獻 現了很多日期。小明知道這些日期都在1960年1月1日至2059年12月31日。令小明頭疼的是,這些日期採用的格式非常不統一,有採用年 月 日的,有採用月 日 年的,還有採用日 月 年的。更加麻煩的是,年份也都省略了前兩位,使得文獻上的乙個日期,存在很...

第八屆藍橋杯省賽(K倍區間)

給定乙個長度為n的數列,a1,a2,an,如果其中一段連續的子串行ai,ai 1,aj i j 之和是k的倍數,我們就稱這個區間 i,j 是k倍區間。你能求出數列中總共有多少個k倍區間嗎?第一行包含兩個整數n和k。1 n,k 100000 以下n行每行包含乙個整數ai。1 ai 100000 輸出乙...