文字列の入力から末尾を書き換える問題と、その提出コードの解答例です。
paizaラーニングのレベルアップ問題集「Dランク早解きセット」からの出典です。
paiza.jp
・問題「たぶん...」
自分に自信のない山田くんは、発言の最後に必ず「たぶん...」と言います。
そんな山田くんの発言を、自信を持って断定する口調に変えてあげましょう。
・入力される値
入力は以下のフォーマットで与えられます
s
sは、", maybe." (空白を含む8文字)で終わる文字列
入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。
・期待する出力
sの末尾の ", maybe." を "!!" に変更して出力してください。
・条件
すべてのテストケースにおいて、以下の条件をみたします。
15 ≤ (sの長さ) ≤ 30
僕が作成、提出したコードは、以下のとおりです。
/* C言語による文字列末尾の書き換え https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include <stdio.h> #include <string.h> void del(char *s1, char *s2){ char *p=s1; p=strstr(s1,s2); if(p!=NULL) { strcpy(p,p+strlen(s2)); del(p+1,s2); } } int main(void){ char s[31]; char del_str[]=", maybe."; fgets(s,sizeof(s),stdin); del(s,del_str); printf("%s!!\n",s); return 0; }
/* Javaによる文字列末尾の書き換え https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ import java.util.Scanner; import java.util.ArrayList; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.nextLine(); String ans = str.replace(", maybe.","!!"); System.out.println(ans); } }
#Pythonによる文字列末尾の書き換え #https://paiza.jp/works/mondai #提出コードの解答例 #https://neguse-atama.hatenablog.com str = input() print(str.replace(', maybe.','!!'))
Pythonのバージョンは、3.x に対応します。
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。