在遊戲廳大賺了一筆的randy 終於贏到了他想要的家具。乘此機會,他想把自己的房間好好整理一
下。 在百貨公司,可以買到各種各樣正方形的地磚,為了美觀起見,randy 不希望同樣顏色的正方形地
磚相鄰。所以他找到了tio 來幫忙解決這件事情。
tio 很快解決了這個任務。然而,出於某種強迫症,她希望在地上按照長寬劃分成網格後,逐行逐
列每一塊的顏色組成的序列的字典序最小。她希望你幫忙驗證一下她的方案。
這題用貪心,按順序找到第乙個空著的位置,求出當前點可以放的最小的字母,再擴充套件一圈(按當前位置為左上角的大一碼的正方形),看看新擴充套件出來的區域能放的最小的字母是什麼(越上越優先),如果一樣就繼續擴充套件,知道不行,
正確性顯然,
#include
#include
#include
#define fo(i,a,b) for(int i=a;i<=b;i++)
#define ok(q,w) ((q)>0&&(w)>0&&(q)<=n&&(w)<=m)
using
namespace
std;
const
int n=105;
int n,m;
int a[n][n];
int ans[n][n];
int z[n];
int fx[4][2]=,,,};
void fz(int q,int w,int n,int e)
bool ok1()
bool nil(int q,int w,int n)
return ans;
}int mi(int q,int w)
void ss()
if(q)break;}
if(!q)return;
int mi=mi(q,w),mi1=mi(q,w+1),mx=1;
if(w2,min(n-q,m-w)+1)if(nil(q,w,k))mx=k;else
break;
}fz(q,w,mx,mi);
ss();
}int main()
return
0;}
JZOJ3807 地磚鋪設
在遊戲廳大賺了一筆的randy 終於贏到了他想要的家具。乘此機會,他想把自己的房間好好整理一下。在百貨公司,可以買到各種各樣正方形的地磚,為了美觀起見,randy 不希望同樣顏色的正方形地 磚相鄰。所以他找到了tio 來幫忙解決這件事情。tio 很快解決了這個任務。然而,出於某種強迫症,她希望在地上...
JZOJ 1245 穿越泥地 bfs
傳送門 問從起點到達指定點而不走過泥潭的最小步數是多少 因為座標可能會是負數,所以我們統一加上500 50050 0使得座標變為非負數 然後怒跑bfs bfsbf s include include include include include include include include de...
JZOJ 4016 圈地為王
description 在 n 行 m 列的網格中,你要圈一些地。你從左上角出發,最後返回左上角,路徑內部的區域視為被你圈住。你不可以進入網格內部,只能在邊上行走。你的路徑不能在左上角以外自交,但是邊足夠寬,你可以重複經過而不自交。網格中有一些格仔對你很重要,你要盡量圈住它 而另一些格仔對你有壞處,...