(題目出處)
見到地名,自然就想到字串了。可以從第一天開始,將她的位置與高手方便取得地方一一比較,(char字串型可用strcmp(s1,s2):
當字串s1當s1==s2時,返回值= 0;
當s1>s2時,返回正數。
即:兩個字串自左向右逐個字元相比(按ascii值大小相比較),直到出現不同的字元或遇'\0'為止。)
(string型可直接用「==」比較,若相等,返回1,反之為0)
這裡用string型。(wa了一次後)注意到乙個地名中可能有空格,於是用string型的整行輸入getline(cin,s1),即整行輸入s1。
注意getline有乙個細節,即與cin連用的話要用cin.ignore()清除輸入緩衝區的乙個字元(或使用多次來清除多個字元),因為cin讀到空格或回車後就會停止不讀,但並不會清除這個字元。而這個字元如不清除,便會直接被getline讀入。getline一讀到回車(回車的表示視作業系統而定)就停止讀入並把回車刪除,故讀到最後少讀了乙個資料(因為一開始的getline什麼都沒讀到)。
(又wa了n次後)
再就是因作業系統的不同導致的回車的表示不一樣。windows的回車為「\r\n」,linux為「\n」,mac為「\r」,而此題測試資料是由windows生成、由linux評測,即在linux系統(評測系統)getline較windows會多讀入乙個"\r"(ascll碼為13),而第乙個測試點的最後是沒有回車的,即最後讀入的地點較之前的地點名最後沒有\r,故需要加特判(終於能過這個詭異的題了)
上**!
1 #include2 #include3using
namespace
std; 4
string g[21],luo[1000001];
5int
main() 6
14for(int i=1;i<=m;++i)15}
20}21 cout<22return0;
23 }
課後鞏固:函式的使用)
使用)使用)
最後再了解一下不同系統回車與換行的表示吧。
擴充套件:回車換行辨析)
洛谷 P1101 題解
這道題可以用深搜 回溯 來寫,相信大部分人都是這麼想的,但是有些人可能在一些地方饒了半天,所以這裡就貼一下我的思路,個人覺得自己的很好懂,除了tx和ty那裡,但是tx和ty的那種用法對於輸出路徑的題目一般很實用 這個算是比較簡單的吧,題目裡給出了具體要找的字串,我們要做的就是對它進行8個方向的搜尋,...
洛谷 P1169 題解
請你在乙個黑白矩陣中選出乙個長方形 含正方形 和正方形的子矩陣,使得所有相鄰的點顏色不一樣。矩陣大小 兩條邊都 2000 2000 2 000輸入 3 31 0 1 0 1 0 1 0 0輸出4 6解釋給定矩陣 正方形 長方形 我的控制台是萌萌噠 ffc0cb粉色 乙個小技巧 如果您的控制台是像我的...
題解 洛谷 P3332
題目描述 權值線段樹套線段樹板子題 首先觀察題目,判斷為二維偏序問題 操作1為區間修改,所以一定是外部線段樹維護權值,內部線段樹維護所在區間,否則時間複雜度 qwq 為方便查詢,雜湊時我採用雜湊每個數的相反數的方法將求第k大轉換為求第k小 詢問可以直接想到的做法就是二分答案,查詢1 ans在區間內的...