給定乙個 n ∗ m 個矩陣,矩陣中每個數都是 [1, 12] 內的整數。你可以執行下列兩個操作任意多次:
• 指定一行,將該行所有數字 +1.
• 指定一列,將該列所有數字 +1.
如果執行完上述操作之後,矩陣中某個數變成了 3, 6, 9, 12 其中的某乙個,我們認為這個數是穩的。
給定初始矩陣,求出任意執行操作之後穩數的最多個數。
輸入格式:
第一行包含兩個正整數 n, m。
接下來 n 行,每行 m 個數,描述這個矩陣。
輸出格式:
乙個整數,表示答案。
輸入樣例#1:
3 3輸出樣例#1:1 2 3
3 2 4
1 2 1
7輸入樣例#2:
5 5輸出樣例#2:2 4 6 8 10
1 2 3 4 5
3 4 5 6 7
7 8 9 10 11
5 10 12 3 7
分析:對於每一行和每一列而言,加i次一定比加i+3次更優,因為3次乙個迴圈,有可能i+3次後數就大於12了,所以對於每一行每一列最多隻需要加2次.這種題行與列之間互相有影響,但是行與行,列與列之間沒有影響的,可以先把行的操作給列舉出來,列是獨立的,貪心地考慮每一列操作多少次即可.
#include #include#include
#include
using
namespace
std;
int n, m, a[20][20], cnt[20
], c1, c2, c0, res, ans;
void
solve()
res +=max(max(c0, c1), c2);
}ans =max(ans, res);
}void dfs(int
dep)
for (int i = 0; i <= 2; i++)
}int
main()
noip模擬賽 密碼
表示沒看懂演算法3 問題描述 有壓迫,就有反抗。mored的寵物在法庭的幫助下終於反抗了。作為乙隻聰明的寵物,他打算把魔法使mored的魔法書盜去,奪取mored的魔法能力。但mored怎麼會讓自己的魔法書輕易地被盜取?mored在魔法書上設定了乙個密碼鎖,密碼鎖上有乙個問題。施以斯臥鋪魔法吧,你有...
NOIP模擬賽 老師
題目描述 一座有n層的教學樓裡有一些學生,第i 0 i n 層有studentsi個學生。你被給定了乙個數k,如果第i層有x個學生,那麼這一層需要 x k 個老師。你可以調整每個學生的樓層,但是每個學生至多只能調整一層,就是說第i層的學生只能去第i 1層 如果有的話 第i層 第i 1層 如果i 1 ...
NOIP模擬賽 分錢
題目描述 兩個人在街上撿到了一些錢,這些錢共有n張,他們等了很久也沒有等來失主,於是決定把錢平分。但錢可能無法平分。他們先把能夠平分的錢盡量先平分了,使得剩下不能平分的錢盡量少。這些不能平分的錢怎麼辦呢他?他們決定拿去賭場裡面賭一把。他們運氣太好了,那些不能平分的錢變成了雙倍,於是他們就把那個錢分了...