精神狀態不好的時候怎麼寫**???????????????????????(真的哭了,一堆sb錯誤
對於16進製制,我們使用字母a-f來表示10及以上的數字。
如法炮製,一直用到字母z,就可以表示36進製。
36進製中,a表示10,z表示35,aa表示370
你能算出 many 表示的數字用10進製表示是多少嗎?
請提交乙個整數,不要填寫任何多餘的內容(比如,說明文字)
36*36*36* +36*36* +36* +
小明家的一面裝飾牆原來是 3*10 的小方格。
現在手頭有一批剛好能蓋住2個小方格的長方形瓷磚。
瓷磚只有兩種顏色:黃色和橙色。
小明想知道,對於這麼簡陋的原料,可以貼出多少種不同的花樣來。
小明有個小小的強迫症:忍受不了任何2*2的小格仔是同一種顏色。
(瓷磚不能切割,不能重疊,也不能只鋪一部分。另外,只考慮組合圖案,請忽略瓷磚的拼縫)
顯然,對於 2*3 個小格仔來說,口算都可以知道:一共10種貼法,如【p1.png所示】
但對於 3*10 的格仔呢?肯定是個不小的數目,請你利用計算機的威力算出該數字。
注意:你需要提交的是乙個整數,不要填寫任何多餘的內容(比如:說明性文字)
爆搜,橫著和豎著,然後從左到右從上到下搜,爆搜要注意hash判重啊,? (sb沒有初始化就求和
#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;
#define int long long
int vis[50][50];
int n=3,m=10;int ans=0;
maphash;
void dfs(int h,int l)
}if(tag) break;
} if(!tag)
if(hash[sss]==0) hash[sss]++,ans++;
} return ;
} if(vis[h][l])
int th=h+1,tl=l;
if(th<=n&&!vis[th][tl])
th=h,tl=l+1;
if(tl<=m&&!vis[th][tl])
}signed main()
if (x > m && y <= m)
if (x <= m && y > m)
if (x > m && y > m)
}int main()
注意:只填寫劃線處缺少的內容,不要填寫已有的**或符號,也不要填寫任何解釋說明文字等。
這題也有點搞, 因為他進來的時候是右上角進來,相當於原圖的坐下角,退一下應該也還是可以出來。
m+1-y
發現環:dfs+並查集 或 拓撲排序
對局匹配: 桶歸類後,對相差為k的dp就行了。**見之前部落格
第八屆藍橋杯決賽總結
最後只得了個國三安慰獎,心裡遺憾也不遺憾。省賽結束後就一直沒認真刷過題,國三也是意料之中吧。比賽題目也是中規中矩,只是自己沒好好準備。第一題很簡單的簽到題。第二題其實之前做過很多態別題,dfs,然而由於自己太久沒做題,沒手感沒題感,寫了近乙個小時,還是沒能出結果。第三題 補全題,類似生成樹,前幾屆決...
2017第八屆藍橋杯決賽 對局匹配
小明發現 的自動對局系統在匹配對手時,只會將積分差恰好是k的兩名使用者匹配在一起。如果兩人分差小於或大於k,系統都不會將他們匹配。現在小明知道這個 總共有n名使用者,以及他們的積分分別是a1,a2,an。第一行包含兩個個整數n和k。第二行包含n個整數a1,a2,an。對於30 的資料,1 n 10 ...
第八屆藍橋杯決賽 發現並輸出環
解題演算法 並查集 向上找祖先 大體思路 先用並查集查詢u v兩個點的祖先是不是同乙個 1 如果不是則合併兩棵樹。2 如果是則表示現在能夠構成環,根據u,v兩個點分別向上查詢其到祖先的路徑,在遍歷兩條路徑,當有公共節點的時候就表示u,v兩個點的最近公共祖先,也是構成環的最開始的節點,從這裡開始將兩條...