題意:乙個n*m的棋盤上讓你放馬,馬和馬之間不能攻擊。問能放多少匹馬。
題解:最開始是以為是一道搜尋題。然後一看資料範圍。瞬間懵逼。發現這道題,是個規律題。而且規律錯綜複雜。死活沒有思路。然後我們隊裡的dalao告訴我。你看一眼西洋棋的棋盤你就能明白這道題了。然後我就看了一下棋盤,發現如下規律
當 n == 1 || m == 1 時
結果為 n和m的最大值。
當 m == 2 時 n為偶數時
結果同上
當 m == 2 時 n為奇數時
結果為 上面的結果+1 (樣例為 2 5 結果為 6,這一組卡了我10年)
n==2的情況和上面m==2的情況相同
其餘情況 為 黑色格仔 和白色格仔多的。為結果。
放乙份能ac這道題 ,但是不對的**。(別問我為什麼能ac這道題,因為我對拍出來的)
#include #includeusing namespace std;
const int maxn = 1050;
int mp[maxn][maxn];
int main()
}else }}
}// freopen("e:\\duipai\\data.txt","r",stdin);
// freopen("e:\\duipai\\out2.txt","w",stdout);
int z = 1000000;
// while(z--)
else if(n == 2 || m == 2)
else if(m%4!=0)
printf("%d\n",ans);
} else
else printf("%d\n",n*m/2+1);
} }}
2018 藍橋杯省賽 A 組模擬賽 矩陣求和
題意 我們把矩陣中的每條邊的中點連起來,這樣形成了乙個新的矩形,請你計算一下這個新的矩形的覆蓋的數字的和。題解 模擬。把不在中點連線的點刪去,然後統計和。當行數 51時i行的個數比i 1行多二。當行數 51時i行比i 1行少二。然後模擬過程。結果 26020201 includeusing name...
2018 藍橋杯省賽 B 組模擬賽(一)
給你乙個序列,請你在其中求出一段最長嚴格上公升的部分,它不一定要連續。include includeusing namespace std int f 10000 b 10000 int lis int n res max res,f i return res 1 int main printf d...
2018藍橋杯省賽C C B組
第四題 鷹蛋問題 ppt tls講解 講的很棒,但屬於較難的啊qaq 方法一 時間複雜度n 3 n 2logn 定義 dp i j 用i個蛋在j層樓上最壞情況下確定e所需要的最小次數 轉移 dp i j min max dp i 1 w 1 dp i j w 1 1 w j i log2 n 1 直...