dfs的姿勢 儘量減少不必要的搜尋

2021-07-15 10:06:04 字數 1111 閱讀 8511

好長時間不做搜尋了 ,雖然做了乙個簡單的果斷tle 和別人**一比就看出高低了 

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 1e9+7

#define pi acos(-1)

#define natrule exp(1)

using namespace std;

#pragma comment(linker, "/stack:1024000000,1024000000")

int mat[10][10];

int marklines[10];

int ans=0;

void dfs(int n,int k,int row)

if(n-row+1>n>>k)

else mat[i][j]=0;}}

if(cnt

其實想想很有道理 本來就是np問題 這個樣子之後就相當於做判斷 這一行選不選

而我把所有位置都搜一變 複雜度已經變成了 (n^2)^k肯定超時 下面是教訓**

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 1e9+7

#define pi acos(-1)

#define natrule exp(1)

using namespace std;

#pragma comment(linker, "/stack:1024000000,1024000000")

int mat[10][10];

int markrows[10];

int marklines[10];

int ans=0;

void dfs(int n,int k,int row)

for(int i=row;i<=n;i++)

else mat[i][j]=0;}}

if(cnt

遞迴 儘量減少不必要的遞迴消耗方式

能用迭代的盡量不用遞迴,在使用遞迴的時候寫發也很重要,要儘量減少不必要的再次遞迴呼叫 e.g.這是乙個遞迴刪除資料夾的例子 寫法1 private static boolean deletedir file dir dir.delete 是資料夾通過上面的遞迴就已經刪空了,最後不管是空資料夾還是檔案...

React 中減少不必要的巢狀

react 中有乙個fragment,可以通過它無需向dom新增額外包含節點。render 有時候可能會需要用到鍵值key 就比如要建立乙個列表 function list props dt dd react.fragment dl key是可以傳遞給fragment的屬性,此外,還可以使用一種新的...

Eclipse用法和技巧十八 減少不必要的輸入

寫 的時候,很多人都有乙個原則,盡量上輸入。依靠ide自動生成的 一般可讀性,排版什麼的都還是不錯的,最主要的一般不會有什麼低階錯誤。今天介紹幾個在eclipse環境中,常用的依靠eclipse完成的操作。第乙個,在實現方法的時候,經常會用到區域性變數,這些區域性變數的初始化值來自於某些物件的某些方...