1 29寒假集訓 2

2021-08-15 03:58:01 字數 953 閱讀 9723

d題(這題搞了好久最後發現少了個num++,令人智熄的操作)

d - 乙個人的旅行

input

輸入資料有多組,每組的第一行是三個整數t,s和d,表示有t條路,和草兒家相鄰的城市的有s個,草兒想去的地方有d個; 

接著有t行,每行有三個整數a,b,time,表示a,b城市之間的車程是time小時;(1=<(a,b)<=1000;a,b 之間可能有多條路) 

接著的第t+1行有s個數,表示和草兒家相連的城市; 

接著的第t+2行有d個數,表示草兒想去地方。

output

輸出草兒能去某個喜歡的城市的最短時間。

sample input

6 2 3

1 3 5

1 4 7

2 8 12

3 8 4

4 9 12

9 10 2

1 28 9 10

sample output

9

#include#include#include#includeusing namespace std;

const int maxv = 1111;

const int inf = 999999999;

int t,s,d,num,c1,c2,c3;

int mp[maxv][maxv],d[maxv];

bool book[maxv]=;

void dijkstra(int st)

{ fill(book,book+maxv,false);

fill(d,d+maxv,inf);

d[st]=0;

for(int i=0;i<=num;i++)

{ int u=-1,min=inf;

for(int j=0;j<=num;j++)

{ if(book[j]==false&&d[j]

寒假集訓2 E

有n n 100 個整數,已經按照從小到大順序排列好,現在另外給乙個整數x,請將該數插入到序列中,並使新的序列仍然有序。input 輸入資料報含多個測試例項,每組資料由兩行組成,第一行是n和m,第二行是已經有序的n個數的數列。n和m同時為0標示輸入資料的結束,本行不做處理。output 對於每個測試...

寒假集訓作業(2) 鍊錶

這真是令人頭疼!include include includeusing namespace std struct node struct node creat2 int n return head int main include include includeusing namespace st...

寒假集訓 Find Metal Mineral

題目鏈結 題意 給出一顆生成樹,1 n 10000,在某乙個節點有k個機械人 k 10 然後機械人從這裡開始走,要求遍歷完節點,隨便停到什麼地方.求最少的路程總和.題解 樹形dp,關鍵是dp u i i的定義,因為機械人可能從子樹再跑回來,然後為了避免重複討論,應該定義為 在u為根的子樹上停了幾個機...