#include <iostream>
using namespace std;

class Parallelepiped {
	public:
		Parallelepiped(double dlina, double shirina, double visota) {
			this->dlina = dlina;
			this->shirina = shirina;
			this->visota = visota;
		}
	
		void vmestimost(Parallelepiped & p) {
			const char * pr;
			if (p.vmeshyaet(*this)) {
				pr = "vtoroi vmeshyaet perviy";
			} else if (vmeshyaet(p)) {
				pr = "perviy vmeshyaet vtoroi";	
			} else {
				pr = "nikto nikogo ne vmeshyaet";
			}
			cout << pr << endl;
		}
	
	private:
		double dlina;
		double shirina;
		double visota;
		
		bool vmeshyaet(Parallelepiped & p) {
			bool dd = dlina > p.dlina;
			bool dv = dlina > p.visota;
			bool ds = dlina > p.shirina;
			
			bool vv = visota > p.visota;
			bool vd = visota > p.dlina;
			bool vs = visota > p.shirina;
			
			bool ss = shirina > p.shirina;
			bool sd = shirina > p.dlina;
			bool sv = shirina > p.visota;
			
			bool ddvvss = dd && vv && ss;
			bool ddsvvs = dd && sv && vs;
			bool dvvdss = dv && vd && ss;
			bool dsvvsd = ds && vv && sd;
			
			return ddvvss || dvvdss || dsvvsd;
		}

};


int main() {
	Parallelepiped a = Parallelepiped(10,20,30);
	Parallelepiped b = Parallelepiped(5,10,20);
	Parallelepiped c = Parallelepiped(20,15,25);
	
	a.vmestimost(b);
	a.vmestimost(c);
	b.vmestimost(c);

	return 0;
};