持續更新 碰見頻率高的幾種dp

2021-10-03 05:25:04 字數 2297 閱讀 7204

都是一些面試筆試常見的問題,基本思路理解了就很簡單。

#include using namespace std;

/*最長公共子串行

*/const int maxn=2e3+10;

char s1[maxn];

char s2[maxn];

int dp[maxn][maxn];

​int dfs(int x,int y)

else

return ans;

}signed main()

}printf("%d\n",dfs(len1,len2));

return 0;

​}

#include using namespace std;

​const int maxn=1e5+10;

int n,l;

int c[200000];

int lowbit(int x)

void add(int x,int v)

}int query(int x)

return ans;

}vectorv;

int a[200000];

int getid(int cur)

signed main()

sort(v.begin(),v.end());

v.erase(unique(v.begin(),v.end()),v.end());

l=v.size();

int ans=0;

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

printf("%d\n",ans);

return 0;

​}

#include using namespace std;

const int inf=0x3f3f3f3f;

int dis[22][22];

int n;

int dp[1<<20+1][22];

int main()

ans=max(ans,dfs(l,r-1));

ans=max(ans,dfs(l+1,r));

return ans;

}signed main()

for(int i=1;i<=len;i++)dp[i][i]=1;

int ans=dfs(1,len);

printf("%d\n",ans);

}return 0;

}

乙個陣列,你和你的對手從兩邊開始拿,你拿到的減去你對手拿到的和應該最大。

當我考慮拿哪個的時候,我應該讓對手拿到的最少。

#include #include #include #include #include #include #include using namespace std;

const int maxn=100+10;

int a[maxn];

int sum[maxn];

int dp[maxn][maxn];

int sum(int i,int j)

int dfs(int x,int y)

return ans=sum(x,y)-min(dfs(x+1,y),dfs(x,y-1));

}signed main()

memset(dp,-1,sizeof(dp));

int ans=dfs(1,n);

printf("%d %d\n",ans,sum[n]-ans);

return 0;

}

#include using namespace std;

​const int maxn=2e3+10;

int dp[maxn][maxn];

char s[maxn],t[maxn];

const int inf=1e9;

int dfs(int x,int y)

ans=inf;

int flag=s[x]==t[y]?0:1;

ans=min(dfs(x-1,y)+1,min(dfs(x,y-1)+1,dfs(x-1,y-1)+flag));

return ans;

}signed main()

}printf("%d\n",dfs(len1,len2));

return 0;

}

Intellij Idea使用頻率較高的幾個快捷鍵

自動補全引數定義 ctrl alt v 執行斷點expression alt f8 選擇具體的方法以斷點步入 shift f7 智慧型操作 alt enter 開啟最近檔案 ctrl e 開啟資料夾 double shift後,輸入 資料夾名 補全行層分號 ctrl shift enter 調出歷史...

Linux使用頻率高的命令

rz be 以二進位制形式上傳檔案 chmod who opt what file 給某個檔案新增許可權 例如 chmod a x hello.sh 給hello.s 件新增所有使用者可執行許可權 who u 檔案所有者 g 同組使用者 o 其他使用者 a 所有使用者 opt 新增許可權 取消許可權...

NSPredicate 的使用 持續更新

nspredicate 謂詞工具一般用於過濾陣列資料,也可用來過濾coredata查詢出的資料.1 支援keypath 2 支援正規表示式 在使用之前先新建3個類 teacher info address,詳細 如下 info.h import inte ce info nsobject prope...