Background
木有背景……
Description
一串长度不超过 255255 的 PASCAL 语言代码,只有 a,b,ca,b,c 三个变量,而且只有赋值语句,赋值只能是一个一位的数字或一个变量,每条赋值语句的格式是 [变量]:=[变量或一位整数];
。未赋值的变量值为 00 输出 a,b,ca,b,c 的值。
Input
一串符合语法的 PASCAL 语言,只有 a,b,ca,b,c 三个变量,而且只有赋值语句,赋值只能是一个一位的数字或一个变量,未赋值的变量值为 00。
Output
输出 a,b,c最终的值。
Sample 1
Inputcopy | Outputcopy |
---|---|
a:=3;b:=4;c:=5; | 3 4 5 |
Hint
输入的 PASCAL 语言长度不超过 255255。
#include <iostream>
#include <cstring>
#include <sstream>
#include <string>
using namespace std;
int a, b, c;
int Getval(char ch)
{
switch (ch)
{
case 'a':
return a;
case 'b':
return b;
case 'c':
return c;
}
return ch - '0';
}
void Getval(char str[])
{
int Sizes = strlen(str);
char ch = str[3];
switch (str[0])
{
//第一个字符就是要赋值的字母
case 'a':
a = Getval(ch);
break;
case 'b':
b = Getval(ch);
break;
case 'c':
c = Getval(ch);
break;
}
}
int main()
{
char tmp[128]={0};
string str;
cin >> str;
for(int i=0;i<str.length();i++) if(str[i] == ';') str[i] = ' ';
stringstream ss(str);
while(ss >> tmp)
{
Getval(tmp);
}
cout << a << ' ' << b << ' ' << c << endl;
return 0;
}