PAT-乙-1093 1093 字符串A+B (20 分)

PAT-乙-1093 1093 字符串A+B (20 分)

代码

#include <iostream>

using namespace std;

int main() {

	string s1, s2;
	getline(cin, s1);
	getline(cin, s2);
	
	int a[128] = {0};
	
	for(int i=0; i<s1.length(); i++){
		if(a[s1.at(i)]==0){
			cout<<s1.at(i);
			a[s1.at(i)] = 1;
		}
	}
	
	for(int i=0; i<s2.length(); i++){
		if(a[s2.at(i)]==0){
			cout<<s2.at(i);
			a[s2.at(i)] = 1;
		}
	}
	
	cout<<endl;

	return 0;
}

注解

1、Hash的思想。开辟a[128],每个单元对应相应ASCII码值的字符是否出现。

结果

PAT-乙-1093 1093 字符串A+B (20 分)