题解:洛谷 AT_abc443_a Append s

【题目来源】

洛谷:AT_abc443_a [ABC443A] Append s - 洛谷(luogu.com.cn)

【题目描述】

给你一个由小写英文字母组成的字符串 \(S\)

输出在字符串 \(S\) 的末尾追加 s 后得到的字符串。

【输入】

输入内容按如下格式给出:

\(S\)

【输出】

输出一行表示答案。

【输入样例】

http

【输出样例】

https

【核心思想】

  1. 问题分析:给定字符串 \(S\),在其末尾追加字符 s 后输出。这是一个字符串拼接问题,核心在于理解字符串的追加操作。

  2. 算法选择

    • 直接输出拼接:读取字符串后直接输出原字符串加 s
  3. 关键步骤

    • 读入数据:字符串 \(S\)
    • 输出结果\(S + \texttt{`s'}\)
  4. 时间/空间复杂度

    • 时间复杂度:\(O(|S|)\),读取和输出字符串
    • 空间复杂度:\(O(|S|)\),存储字符串
  5. 字符串拼接的核心思想

    • 追加操作的语义:在字符串末尾添加一个字符,形成新字符串。代码中通过 cout << s << "s" 实现,利用输出流的连续插入特性
    • 边界情况:空字符串时输出 s;字符串本身以 s 结尾时(如 ss)输出 sss,追加操作无条件执行
    • 适用于基础字符串操作类入门问题

【算法标签】

入门 #字符串入门

【代码详解】

#include <bits/stdc++.h>
using namespace std;

string s;  // 存储输入的字符串

int main()
{
    cin >> s;  // 从标准输入读取一个字符串

    // 输出原字符串并在末尾添加字母's'
    cout << s << "s" << endl;

    return 0;
}

【运行结果】

http
https
posted @ 2026-08-27 11:05  团爸讲算法  阅读(4)  评论(0)    收藏  举报