A. 括弧組合
與2A題的概念相當,不過目的是在於將「所有的組合」都給生成出來。
可以利用簡單的DFS,將每個狀況皆列舉出來後,再判斷當前組合是否無法形成括弧組合的方式。
# include <bits/stdc++.h>
using namespace std;
void paren(int n, int l, string s){
if(l<0 || n<0)
return;
D. 黑白棋
本題源自於 程式自學平台:ITSA Online Contest 74th Problem 7. 找出合法棋步
(需先登入才能閱覽題目)
窮舉完每個黑色棋子,並對其進行八個方向的窮舉,
方向的設定可以利用一個8x2的陣列來存起來,這樣在後續利用for迴圈窮舉時會變得比較容易。
# include <iostream>
using namespace std;
B. 字串解碼
本題源自於Leetcode:394. Decode String
# include <iostream>
# include <stack>
# include <string>
# include <sstream>
# include <cstdlib>
using namespace std ;