[問題解決レポート]マーベラス迷路

効果の対象に

原題:http://uva.onlinejudge.org/external/4/445.pdf

背景

タイトルは、単に迷路を作っていた、フロントの後ろに表示される文字の数は数字の合計に等しくなります表示され、「B」が空白に置き換えられ、「!」は「\ n」の代わりに「*」が変更されていないのです。

 

サンプル入力

1T1b5T!1T2b1T1b2T!1T1b1T2b2T!1T3b1T1b1T!3T3b1T!1T3b1T1b1T!5T1 * 1T 

11X21b1X
4X1b1X

 

サンプル出力

T TTTTT 
T T TT
T T TT
T TT
TTT T
T TT
TTTTT * T

XX X
XXXX X

アルゴリズム:

入力行は、この行ではなく迷路を見えるようにしているすべての入力が完了するのを待っているよりも、迷路の出力となりますのでご注意してください、私は長い間ここにもつれ始めました。この質問はおそらく私のような誰かがそこに問題を解決するために考えられた文字列を文字列の長いリストを参照するが、はるかに良いかもしれないダウン解体文字を解決するために、その入力バッファをフルに活用されます役割は、文字が、私はそれがC環境を最大限に活用するために理解してこの質問は機能するために何かを持っている、読み込み、出力結果を読み取って、これはコードの効率を高めることができます。

コード:ここに私のコードを囲み、あなたが行くことができ、ここで、あなたのコードが正しいことを確認するためにあなたのコードを提出し、

1の#include <stdio.hの>
 2の#include <のctype.h>
 3  INTメイン(ボイド4  {
 5      チャーCH。
6      int型のカウント= 0、I = 0 ;
7  
8      しばらく(scanf関数(" %のC "、&​​CH)=!EOF)
 9      {
 10          であれば(isdigit(CH))
 11          {
 12              カウント+ = CH - ' 0 ' 13              続けます14          }
 15         そう であれば(isupper(CH)|| CH == ' B ' || CH == ' * ' 16          {
 17              (i = 0 ; iは数<; Iは++ 18              {
 19                  であれば(CH == ' B ' 20                  のprintf("  " )。
21                  他の
22                  のprintf(" %のC " 、CH)。
23              }
 24              カウント= 0 ;
25         }
 26          もし(CH == ' ' || CH == ' \ n個' 27          のprintf(" \ nを" );
28       }
 29      リターン 0 30 }

 

ます。https://www.cnblogs.com/qisong178878915/archive/2013/02/16/2913784.htmlで再現

おすすめ

転載: blog.csdn.net/weixin_33829657/article/details/94237202