:ために書かれた羅区P1597
タイトル説明
ストリングPASCAL言語コード長のみ、bは、3つの変数、およびのみ代入文C、割り当てのみ数または変数、各代入文の形式であることができ、255を超えません[变量]:=[变量或一位整数];
。ゼロの未割り当て変数の値。のA、B、Cの出力値。
入力形式
ストリング(<255)PASCAL言語のみ、bは、3つの変数、およびのみ代入文C、割り当てのみ数または可変とすることができ、変数が0割り当てられていません。
出力フォーマット
それは最終的な値のA、B、Cを出力します。
サンプル入力
a:=3;b:=4;c:=5;
サンプル出力
3 4 5
分析
基本的なシミュレーションの質問。
我々は、我々の入力を保持する文字列sで始まります。
その後、我々は5つの文字、フォームからなる文を見つけることができ、「X:= Y;」を、どこX
確かに文字「」、「B」、 「C」 1、およびY
「A」であってもよいし、「B」 、「9」から「C」またはデジタル「0」です。
その後、さまざまな状況で、B、Cの値を得ることができます。
次のようにコードは次のとおりです。
#include <bits/stdc++.h>
using namespace std;
string s;
int a, b, c;
int main() {
cin >> s;
int len = s.length();
for (int i = 0; i+4 < len; i += 5) {
char d = s[i];
char e = s[i+3];
int f;
if (isdigit(e)) {
f = e - '0';
}
else {
if (e == 'a') f = a;
else if (e == 'b') f = b;
else f = c;
}
if (d == 'a') a = f;
else if (d == 'b') b = f;
else c = f;
}
printf("%d %d %d\n", a, b, c);
return 0;
}