福到了(帶空格的字串輸入,string迭代器)

2021-08-27 03:51:05 字數 1561 閱讀 8907

l1-054 福到了(15 分)

「福」字倒著貼,寓意「福到」。不論到底算不算民俗,本題且請你編寫程式,把各種漢字倒過來輸出。這裡要處理的每個漢字是由乙個 n × n 的網格組成的,網格中的元素或者為字元@或者為空格。而倒過來的漢字所用的字元由裁判指定。

輸入在第一行中給出倒過來的漢字所用的字元、以及網格的規模 n (不超過100的正整數),其間以 1 個空格分隔;隨後 n 行,每行給出 n 個字元,或者為@或者為空格。

輸出倒置的網格,如樣例所示。但是,如果這個字正過來倒過去是一樣的,就先輸出bu yong dao le,然後再用輸入指定的字元將其輸出。

$ 9

@ @@@@@

@@@ @@@

@ @ @

@@@ @@@

@@@ @@@@@

@@@ @ @ @

@@@ @@@@@

@ @ @ @

@ @@@@@

$$$$$  $ 

$ $ $ $

$$$$$ $$$

$ $ $ $$$

$$$$$ $$$

$$$ $$$

$ $ $

$$$ $$$

$$$$$ $

& 3

@@@ @

@@@

bu yong dao le

&&& &

&&&

(第一次做這個題是在哈工大的天梯賽,對這道題印象特別深刻,當時覺得這道題比較簡單,後來做完之後發現一直編譯錯誤,從這道題心態炸了,沒有發揮出應該的水平,拖累我們團隊的後退,再次做這個題已經隔了好幾個月,發現還是編譯錯誤,測試資料都對,從頭到尾檢查仍然改不出來,後來在隊長的幫助下終於發現了自己原來用錯了迭代器。也是第一次聽說string迭代器,認識到自己距離大佬的距離。這道題其實不用vector儲存也能做,我是為了用reverse函式,貪小便宜吃大虧啊23333)

**:

#include

#include

#include

#include

#include

using namespace std;

int main()

{char s;

int n;

cin>>s>>n;

string str;

int i,j;

vectorv;

getchar();//getchar()能接受乙個回車符

for(i=0;i迭代器***

for(i=0;i=0;i--)

{reverse(v[i].begin(),v[i].end());

for(it=v[i].begin();it!=v[i].end();it++)

{if(*it==' ')

cout<<' ';

else

cout<

C C 輸入帶空格的字串

機試的時候碰到的問題,當時腦子卡克到想不出來怎麼處理,用了一種賊複雜的方法,現在整理下!include include int main 一句gets解決的事情,我居然tm沒想起來。太羞恥了 include include int main include include int main incl...

C 連續輸入帶空格的字串

測試檔案 測試1 include include include using namespace std int main 測試結果 顯然cin s不能夠接受空格的輸入 測試2 include include include using namespace std int main 測試結果 顯然g...

C C 中帶空格的字串的輸入

對於字元陣列 方法一 getline 讀入整行資料,使用回車鍵輸入的換行符來確定輸入結尾。呼叫方法 cin.getline str,len 第乙個引數str用來儲存輸入行的陣列名稱,第二個引數是要讀取的字元數。方法二 cin.get str,len 兩者都是讀取一行輸入,直至換行符。然後,getli...