1. 程式人生 > >[洛谷八連測R4]逃避

[洛谷八連測R4]逃避

reset log psu als 空格 ups ott nbsp span

題目描述

給定一篇只含有大小寫字母,空格以及 ′.′(不含引號)的長度為 L 的文章。文章被若幹個 ′.′ 劃分 成若幹個句子,句子被若幹個空格劃分成單詞。你需要將文章中每個句子第一個單詞的首字母改成大寫, 其他一律小寫,空格與 ′.′ 需原樣輸出。註意,可能存在某個句子中沒有單詞,或者某兩個單詞之間有多 個空格。

輸入輸出格式

輸入格式:

一行,表示原串。

輸出格式:

一行,表示你的回答。

輸入輸出樣例

輸入樣例#1: 復制
nigeru. wa.haji.
輸出樣例#1: 復制
Nigeru. Wa.Haji.
輸入樣例#2:
.. .nI noip WEn   le  .NICE broO..
輸出樣例#2:
.. .Ni noip wen   le  .Nice broo..

說明

測試點編號  限制與約束
1,2,3,4,5 L<=10^3L<=103
6,7,8,9,10 L<=10^5L<=105

思路

掃一遍輸入,判斷。時間復雜度為O(n).

#include <cstdio>
char s;
int main()
{
   bool flag = true;
    while (scanf("%c",&s)!=EOF)
    {
        if(s==.)flag=true;
        
else if((s>=A&&s<=Z)||(s>=a&&s<=z)) { if(flag) { if(s>=a&&s<=z)s-=32; flag=false; } else if(s>=A&&s<=Z)s+=32; } printf("%c",s); }
return 0; }

[洛谷八連測R4]逃避