#include using namespace std; #define rep(i,a,b) for(int i=(a);i<(b);++i) #define all(n) (n).begin(),(n).end() // カントールの標準形に直す struct tree{ vector>v; tree(){} tree(const vector>&v):v(v){}; tree operator+(const tree& b)const{ tree res; for(auto c:v){ if(!b.v.empty()&&c&a,const pair&b){ if(a.first==b.first)return a.second>s>>t; s="(|"+s+")"; t="(|"+t+")"; auto ts=string_to_tree(s); auto tt=string_to_tree(t); // ts.print(); // tt.print(); cout<<(tt