1808:検索文字列を削除
制限時間:1秒 メモリ制限:32メガバイトの提出:2002 解決:574
[ 送信 ] [ ステータス ] [ ウェブボード ]、[作成者:インポート]
説明
(スペースなし)短い文字列を考えると、これらの文字列に含まれる短い文字列を、固定の文字列を複数与える削除します。
入力
入力データの一組のみ。
(スペースなし)短い文字列を入力し、[ファイルの数まで入力文字列の最後まで。
出力
入力された短い文字列を削除する(ケース小文字を区別しない)とスペースの出力を削除します。
サンプル入力
#include
INTメイン()
{
のprintf( "こんにちは");
}
サンプル出力
#clude
TMA()
{
PRTF( "こんにちは");
}
ヒント
注:文字列には、IN、INが、中には削除します。
1の#include <stdio.hの> 2の#include < 文字列・H> 3。 4。 INT メイン(){ 5。 チャー C [ 100 ]; 6 チャー S [ 1000年]; 図7 (C)を取得し、 8 INT LEN1 = STRLEN(C )、LEN2; 9 // C [i]とは、完全に小文字に変換された 10 のために(INT I = 0 ; <I ++ LEN1 I; ){ 11 IF(C [I]> = ' A ' = && C [I] < ' Z ' ){ 12であります C [I]は= C [I] + 32 ; 13である } 14 } 15 ながら(取得(S)){ 16 LEN2 = STRLEN(S)、 17 IF(LEN2> = LEN1){ 18れる // このマッチング処理ではありませんそれが理解されている 19。 ために(INT I = 0、K = 0 ; I < LEN2;){ 20は // マッチングは、同じIは、一致しない場合、Iを増加します! 21は IF(S [K + I] == C [K] || S [K + I] == C [K] - 32 ){ 22は ++ K ; 23である IF(K == LEN1){ 24 Iは、I + kを=; //は、項kで満たされ、iがK増やす 25 のk = 0 ; 26れる } 27 } 他{ 28 IF(S [I] =!' ' ){ 29 のprintf(" %のCを" 、S [I]); 30 } 31である ++ I ; 32 = K 0 、 33である } 34である } 35 } 他{ 36 のために(INT iが= 0 ; I <LEN2; iが++ ){ 37 であれば(S [I] =!' ' ){ 38 のprintf(" %のC " 、S [I])。 39 } 40 } 41 } 42 のprintf(" \ n " ); 43 } 44 リターン 0 。 45 }