程式設計訓練 Engine 字串

2021-10-23 16:53:02 字數 2880 閱讀 5269

輸入包含多組資料。

每組資料首先有一行包含乙個整數n(1<=n<=1000),表示**的數目,n=0表示輸入結束。每組**的資訊第一行是**的標題,由字母(大小寫均可)和空格組成,不超過10個詞,每個詞不超過20個字元,標題總共不超過250個字元。第二行是乙個整數k(0<=k<=108),表示它被引用的次數。在**資訊結束以後,有一行包含乙個整數m(1<=m<=100),表示詢問的數目。接下來有m行,每行是乙個詢問,由l(1<=l<=10)個空格分開的詞構成,每個詞不超過20個字元。

對每個詢問,按照題目給定的順序輸出滿足條件的**的標題;如果沒有滿足條件的**,就不輸出。在每組詢問的輸出之後輸出一行「***」,在每組資料的輸出之後輸出一行「—」。

6

finding the shortest path

120finding the k shortest path

80find augmenting path in general graph

80matching in bipartite graph

200finding kth shortest path

5040

6shortest path

k shortest path

graph

path

find

0

finding the shortest path

finding the k shortest path

finding kth shortest path**

*finding the k shortest path**

*matching in bipartite graph

find augmenting path in general graph**

*finding the shortest path

finding the k shortest path

find augmenting path in general graph

finding kth shortest path**

*find augmenting path in general graph**

****

---

1

finding the shortest path

1202

path

pat0

finding the shortest path**

****

---

提交**(10/10分,c++):

字串

#include

#include

#include

#include

#include

using

namespace std;

struct article};

bool

cmp(

const article &a,

const article &b)

;//按被引用次數進行排序

string string2lstring

(string str)

;//大寫轉小寫

void

inquire

(vector obj, vector arts)

;//查詢

vector

split

(string str)

;//將str中的詞分割開

intmain()

sort

(arts.

begin()

, arts.

end(

), cmp)

;//排序

cin >> n_search;

//查詢次數

getchar()

;for

(int i =

0; i < n_search; i++

) cout <<

"---"

<< endl;

}return0;

}bool

cmp(

const article &a,

const article &b)

//按被引用次數進行排序

string string2lstring

(string str)

//大寫轉小寫

}return str;

}void

inquire

(vector obj, vector arts)

//查詢

else

if(it-

>title_l[findword -1]

==' '

&&(it-

>title_l[findword + len_o]

==' '

|| it-

>title_l[findword + len_o]

=='\0'))

}}if(num_words_found == num_words)

//輸入的詞全部找到

} cout <<

"***"

<< endl;

}vector

split

(string str)

//將str中的詞分割開

} words_s.

push_back

(str.

substr

(head_w));

//當前head_w為最後乙個空格位置+1(沒有出現空格則為0),從該位置到末尾組成乙個詞

return words_s;

}

C 字串程式設計訓練2

今天講的一道習題是很經典的約瑟夫環問題,其實lz對於鍊錶的某些操作還不是太懂,所以在程式中有些地方還不太看得懂,這裡借鑑的網上的做法,還請大牛能夠解答我的疑惑,謝謝!struct node else q p p next head p變為最後乙個節點 return p int main int n,...

Engine 字串(C 實訓題)

輸入形式 輸入包含多組資料。每組資料首先有一行包含乙個整數n 1 n 1000 表示 的數目,n 0表示輸入結束。每組 的資訊第一行是 的標題,由字母 大小寫均可 和空格組成,不超過10個詞,每個詞不超過20個字元,標題總共不超過250個字元。第二行是乙個整數k 0 k 108 表示它被引用的次數。...

字串演算法訓練

1.題目 請編寫乙個c函式,該函式將乙個字串逆序 include include include void change char str c 0 printf s n c strlen begin void main printf 輸入乙個字串 n scanf s b change b 2 inc...