/*
* youxi.cpp
** created on: 2023年9月24日
* author: sl
*//**
* 蓋遊戲板問題 演算法問題實戰策略
* 有乙個h*w大小的遊戲板,由黑白兩種格仔組成。現要用3個單位格仔的l狀板塊把白色格仔全部覆蓋掉。板塊可以自由旋轉,但不能重疊覆蓋黑色格仔,或超出遊戲版。
* 計算對給定遊戲板有幾種覆蓋方法。
*/#include
#include
using namespace std;
/** 對當前格仔的4種覆蓋方法構成板塊的3個格仔的相對位置(dy,dx)
* 因為假定從最左上的格仔開始覆蓋。
*/const int covertype[4][3][2] = ,,},
,,},
,,},
,,}};
vector< vector> board(3);
vector< vector> board1(8);
/** 把board的格仔(y,x)用第type種方法進行覆蓋或刪除已覆蓋的板塊。
* delta=1表示用板塊覆蓋,delta=-1則刪除已覆蓋的板塊
* 如果不能正常覆蓋(超出遊戲板的邊界,重疊、覆蓋黑色格仔)時,返回false值
*/bool set(vector>& board, int y, int x, int type, int delta)
return ok;}/*
* 返回覆蓋board中儲存著的所有空格的方法總數。
* board[j][i]=1表示已被覆蓋的格仔或黑色格仔
* board[j][i]=0表示未被覆蓋的白色格仔
*/int cover(vector>& board)
if(y!=-1) break;
}//初始部分:已覆蓋所有的白色盒子,則返回1
if(y==-1)
return 1;
int ret = 0;
for(int type = 0;type<4;type++)
return ret;
}int main()
for(int i = 0;i<8;i++)
}for(int j = 0;j<10;j++)
for(int j = 0;j<10;j++)
for(int i = 1;i<=6;i++)
int result = cover(board);
int result1 = cover(board1);
cout}
蓋亞遊戲資料分析面試總結
1 自我介紹 2 關於電信使用者的資料 方面,介紹具體的演算法是怎麼進行的。那麼如何進一步提高精度?我答可以用xgboost 3 如果給出一組遊戲類的歷史資料,arppu等資料呢?我回答的是arima模型,後來面試官提出prophet。可以提取趨勢 週期性 節假日等。facebook的開源包。4 對...
色板遊戲(線段樹)
題目背景 阿寶上學了,今天老師拿來了一塊很長的塗色板。題目描述 色板長度為l,l是乙個正整數,所以我們可以均勻地將它劃分成l塊1厘公尺長的小方格。並從左到右標記為1,2,l。現在色板上只有乙個顏色,老師告訴阿寶在色板上只能做兩件事 1.c a b c 指在a到 b 號方格中塗上顏色 c。2.p a ...
色板遊戲(線段樹)
題目背景 阿寶上學了,今天老師拿來了一塊很長的塗色板。題目描述 色板長度為l,l是乙個正整數,所以我們可以均勻地將它劃分成l塊1厘公尺長的小方格。並從左到右標記為1,2,l。現在色板上只有乙個顏色,老師告訴阿寶在色板上只能做兩件事 1.c a b c 指在a到 b 號方格中塗上顏色 c。2.p a ...