#include<cstdio>
#include<algorithm>
using namespace std;
long long n,ans,a[11];
void dfs(long long k,long long t,long long s)
{
if (s>=ans)return;
if (!t)ans=s;
if ((k==3)||(t<0))return;
dfs(k+1,t,s);
dfs(k,t-(1<<k),s+a[k]);
}
int main()
{
for (int i=0;i<4;i++)scanf("%lld",&a[i]);
scanf("%lld",&n);
n*=4;
ans=a[0]*(n%8);
dfs(0,n%8,0);
printf("%lld\n",ans+n/8*min(min(a[0]*8,a[1]*4),min(a[2]*2,a[3])));
}
./Main.cpp: In function ‘int main()’:
./Main.cpp:15:42: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
for (int i=0;i<4;i++)scanf("%lld",&a[i]);
^
./Main.cpp:16:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%lld",&n);
^