#include<iostream>
#include<algorithm>
using namespace std;
int main(void)
{
int n,m,q=0;
cin>>n>>m;
//不能直接判断有没有解,要输入完。
int a[n],b[m];
bool x[m];
for(int i=0;i<n;i++)cin>>a[i];
for(int i=0;i<m;i++){cin>>b[i];x[i]=1;}
if(n>m){cout<<"you died!";return 0;}
for(int i=0;i<n;i++)
{
//判断这颗头是否有解
for(int j=m-1;j>=0;j--)
{
//遇到已经用过了的骑士
if(a[j]==0)continue;//换下一个骑士
//遇到能打过的骑士
if(a[j]<=b[i])break;//可能还有解
//最厉害的骑士都打不过,死了
else
{
//输出然后结束整个程序
cout<<"you died!";
return 0;
}
}
//如果要花费最小,每次都要用能打过且花费最小的骑士。
for(int j=0;j<m;j++)
{
if(b[j]>=a[i]){q+=b[i];break;}//加花费并换头
}
}
cout<<q;//输出花费
return 0;//完美的句号
}```