题目描述
在很多程序设计语言中,忘记给变量赋初值的错误常令人头疼。
在下面的问题中,最开始仅有变量a中有确定的值。变量为单个小写字母, 每行恰好有三个字符,中间一个是赋值运算符'='。
请编程求出含N行的程序段运行以后有哪些变量中有确定的值。
输入格式
第一行:N (0<N<=10^6)
以下N行,每行3个字符,为一条语句.
输出格式
如果没有,输出 none
否则在一行中按字母表顺序给出所有有确定值的变量名,字母之间用空格分隔。
样例数据
input
4
b=a
c=d
d=b
e=f
output
a b d
数据规模与约定
时间限制:1s
#include<bits/stdc++.h>
using namespace std;
int n,a[9877654];
char c,c1,c2;
int main(){
a['a']=1;
cin>>n;
for(int i=1;i<=n;i++){
cin>>c>>c1>>c2;
a[c]=a[c2];
}
bool flag=1;
for(char ch='a';ch<='z';ch++){
if(a[ch]==1){
if(flag==1){
cout<<ch;
flag=0;
}
else cout<<' '<<ch;
}
}
if(flag==1) cout<<"none";
else cout<<endl;
return 0;
}