1 条题解

  • 0
    @ 2026-10-18 21:32:32

    [NOIP 2018 普及组] 标题统计

    知识点

    字符串、字符处理、计数

    解题思路

    逐个读取字符,统计不属于空格、换行或回车的字符数量。

    正确性说明

    在题目规定的字符集合中,需要排除的只有空格和换行;其余英文字母与数字各贡献1,因此逐字符求和正好得到有效长度。

    易错点

    不能用cin>>s只读到第一个空格;不要把尾部换行计入答案;字母大小写不影响计数。

    复杂度

    时间O(|s|),空间O(1)。

    参考代码(GNU C++17)

    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        char c;int ans=0;while(cin.get(c))if(c!=' '&&c!='\n'&&c!='\r')++ans;
        cout<<ans<<'\n';
    }
    
    • 1

    信息

    ID
    104
    时间
    1000ms
    内存
    256MiB
    难度
    进阶
    标签
    递交数
    4
    已通过
    2
    上传者