struct dlistnode { int key,val; dlistnode* prev; dlistnode* next; dlistnode():key(0),val(0),prev(nullptr),next(nullptr){}; dlistnode(int _key,int _val):key(_key),val(_val),prev(nullptr),next(nullptr){}; dlistnode(int _key,int _val,dlistnode* _prev,dlistnode* _next):key(_key),...