NWPU演算法考試複習 加一乘二平方

2021-08-31 16:00:45 字數 764 閱讀 7423

描述

最簡單的佇列的使用

#include

#include

using namespace std;

queue q1;

int main()

給定兩個正整數m、n,問只能做加1、乘2和平方這三種變化,從m變化到n最少需要幾次

輸入輸入兩個10000以內的正整數m和n,且m小於n

輸出輸出從m變化到n的最少次數

輸入樣例

1 16

輸出樣例

3

#include

#include

#include

//分支限界法使用佇列的思想,使用這種可以比較方便的寫出乙個佇列

using

namespace std;

queue<

int>q;

intbfs()

;int a,b,step[

10000];

//step陣列記錄步數,表示到達那個數字的步數

intmoveto

(int key,

int dir)

;int

main()

intbfs()

//廣度優先搜尋函式}}

return0;

}int

moveto

(int key,

int dir)

return-1

;}

NWPU演算法考試複習 二分查詢

描述 給定乙個單調遞增的整數序列,問某個整數是否在序列中。輸入第一行為乙個整數n,表示序列中整數的個數 第二行為n n不超過10000 個整數 第三行為乙個整數m m不超過50000 表示查詢的個數 接下來m行每行乙個整數k。輸出每個查詢的輸出佔一行,如果k在序列中,輸出yes,否則輸出no。輸入樣...

NWPU演算法考試複習 裝載問題

描述 有兩艘船,載重量分別是c1 c2,n個貨櫃,重量是wi i 1 n 且所有貨櫃的總重量不超過c1 c2。確定是否有可能將所有貨櫃全部裝入兩艘船。輸入多個測例,每個測例的輸入佔兩行。第一行一次是c1 c2和n n 10 第二行n個整數表示wi i 1 n n等於0標誌輸入結束。輸出對於每個測例在...

NWPU演算法考試複習 窮舉所有排列

描述 輸入乙個小於10的正整數n,按把每個元素都交換到最前面一次的方法,輸出前n個小寫字母的所有排列。輸入輸入乙個小於10的正整數n。輸出按把每個元素都交換到最前面一次的方法,輸出前n個小寫字母的所有排列。輸入樣例 3輸出樣例 abcacb bacbca cbacab include 這題也是乙個簡...