1. 程式人生 > >『題解』洛谷P5015 標題統計

『題解』洛谷P5015 標題統計

題意描述

給你一個字串,求所有字元的總數。

字元只包含數字,大小寫字母。

分析

字串的長度還是\(\le5\)的。

直接列舉就可以了。

AC程式碼:

NOIP官方標準程式是這樣的
#include <iostream>
#include <cstdlib>
#include <string>

int main() {
    freopen("title.in", "r", stdin);
    freopen("title.out", "w", stdout);

    std::string s;
    std::getline(std::cin, s);
    int cnt = 0;
    if (s.length() > 0 && s[0] != ' ') ++cnt;
    if (s.length() > 1 && s[1] != ' ') ++cnt;
    if (s.length() > 2 && s[2] != ' ') ++cnt;
    if (s.length() > 3 && s[3] != ' ') ++cnt;
    if (s.length() > 4 && s[4] != ' ') ++cnt;
    std::cout << cnt << std::endl;

    return 0;
}

直接列舉\(5\)個位。

還是我的比較可觀:

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>

using namespace std;

char s[10];
int main() {
    gets(s);//讀入字串(不推薦用,再Linux下的換行符和Windows下的不一樣)
    int ans=0;//清空ans
    for (int i=0; i<strlen(s); i++) {//別忘了C++字串下標是從0開始的
        if (s[i]>='A' &&s[i]<='Z') ans++;
        if (s[i]>='a' &&s[i]<='z') ans++;
        if (s[i]>='0' &&s[i]<='9') ans++;//數字
    }
    printf("%d\n",ans);//輸出結果
    return 0;
}