計蒜客 1258 最小新整數 dfs經典

2021-10-04 11:40:33 字數 1072 閱讀 1865

給定乙個十進位制正整數 n(0 < n < 1000000000)n(0輸入格式

第一行 tt, 表示有 tt 組資料;

接下來 tt 行,每一行表示一組測試資料,每組測試資料報含兩個數字 n, kn,k。

輸出格式

tt 行,每行乙個數字,表示從 nn 中刪除 kk 位後得到的最小整數。

輸出時每行末尾的多餘空格,不影響答案正確性

樣例輸入複製

29128456 2

1444 3

樣例輸出複製

12456

1

//@author:hairu,wu

//@from:ahut

#include

#include

using

namespace std;

int a[20]

;bool visited[20]

;int n;

//數字長度

int min;

int m;

//當前位置,當前列舉的數量,當前值

void

dfs(

int pos,

int num,

int sum)

//剪枝

if(pos==-1

|| num>m )

return

;//搜尋

visited[pos]

=true

;//標記當前位置,搜尋下一次位置

dfs(pos-

1,num+

1,sum*

10+a[pos]);

dfs(pos-

1,num,sum)

; visited[pos]

=false

;//回退

return;}

intmain()

//改變思想,去除m個 ---> 選取n-m個

m=n-m;

min=

1e9+1;

dfs(n-1,

0,0)

; cout<}return0;

}

計蒜客 踏青 dfs

題目描述 蒜頭君和他的朋友週末相約去召喚師峽谷踏青。他們發現召喚師峽谷的地圖是由一塊一塊格仔組成的,有的格仔上是草叢,有的是空地。草叢通過上下左右 4 個方向擴充套件其他草叢形成一片草地,任何一片草地中的格仔都是草叢,並且所有格仔之間都能通過上下左右連通。如果用 代表草叢,代表空地,下面的峽谷中有 ...

計蒜客 踏青(DFS)

蒜頭君和他的朋友週末相約去召喚師峽谷踏青。他們發現召喚師峽谷的地圖是由一塊一塊格仔組成的,有的格仔上是草叢,有的是空地。草叢通過上下左右 444 個方向擴充套件其他草叢形成一片草地,任何一片草地中的格仔都是草叢,並且所有格仔之間都能通過上下左右連通。如果用 代表草叢,代表空地,下面的峽谷中有 222...

計蒜客 劃分整數(dp)

劃分整數 蒜頭君特別喜歡數學。今天,蒜頭君突發奇想 如果想要把乙個正整數 nn n 分解成不多於 kk k 個正整數相加的形式,那麼一共有多少種分解的方式呢?蒜頭君覺得這個問題實在是太難了,於是他想讓你幫幫忙。共一行,包含兩個整數 n 1 n 300 n 1 leq n leq 300 n 1 n ...