Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # include <bits/stdc++.h>
- using namespace std;
- vector<pair<int, int> > v[200];
- queue<char> q;
- int us[200], kol [200];
- string s[110];
- int main()
- {
- // freopen("epsilon.in", "r", stdin);
- // freopen("epsilon.out", "w", stdout);
- int n, m;
- char c;
- cin>> n>> c;
- getline(cin, s[0]);
- cout << "asas"<<' '<<s[0]<<'\n';
- for(int i = 1; i <= n; i ++){
- getline(cin, s[i]);
- if(s[i][s[i].size() - 1] == '>'){
- us[s[i][0]] = 1;
- q.push(s[i][0]);
- }
- for(int j = 5; j < s[i].size(); j ++){
- if(s[i][j] >= 'A' && s[i][j] <= 'Z'){
- //cout<< s[i][0]<<' '<<s[i][j]<<'\n';
- v[s[i][j]].push_back(make_pair(i, j));
- }
- }
- }
- while(!q.empty()){
- char st = q.front();
- q.pop();
- //cout << st<<'\n';
- for(pair<int, int> i : v[st]){
- if(s[i.first][i.second] != '#'){
- s[i.first][i.second] = '#';
- kol[i.first]++;
- if(kol[i.first] == s[i.first].size() - 5 && us[s[i.first][0]] == 0){
- us[s[i.first][0]] = 1;
- q.push(s[i.first][0]);
- }
- }
- }
- }
- int q = 0;
- for(char i = 'A'; i <= 'Z'; i ++){
- if(us[i] == 1){
- if(q){
- cout <<' ';
- }
- q = 1;
- cout <<i;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement