天天看點

PAT乙級1009

時間限制

400 ms

記憶體限制

65536 kB

代碼長度限制

8000 B

判題程式

Standard

作者

CHEN, Yue

給定一句英語,要求你編寫程式,将句中所有單詞的順序颠倒輸出。

輸入格式:測試輸入包含一個測試用例,在一行内給出總長度不超過80的字元串。字元串由若幹單詞和若幹空格組成,其中單詞是由英文字母(大小寫有區分)組成的字元串,單詞之間用1個空格分開,輸入保證句子末尾沒有多餘的空格。

輸出格式:每個測試用例的輸出占一行,輸出倒序後的句子。

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string s;
    getline(cin,s);
    int spacenumber[81] = {0};
    int i = 0,j= 0;

    while(s[i]!='\0')
    {
        if(s[i]==' ')
        {
            if(s[i+1]==' ')
                return 0;
            spacenumber[j++] = i;

        }
        i++;
    }

    j--;

    while(j>=-1)
    {

        if(j==-1)
        {
            i = 0;
            j--;
        }
        else
            i = spacenumber[j--]+1;
           // cout<<"j"<<j<<"i"<<i;
        while(s[i]!='\0'&&s[i]!=' ')
        {
            cout<<s[i];
            i++;
        }
        if(j>-2)
            cout<<' ';
    }

}      
上一篇: PAT乙級1010
下一篇: PAT乙級1008