cf
B. Anton and Digits
https://codeforces.com/problemset/problem/734/B
总体思路:
256为优先,32次之。因此,2先提供给256。
法1
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int i,ans,a[4],c[3];
for(i=0;i<4;i++)
cin>>a[i];
c[0]=a[0];
c[1]=a[2];
c[2]=a[3];
sort(c,c+3);
if(c[0]==a[0])
ans=256*c[0];
else
ans=256*c[0]+32*min(a[1],a[0]-c[0]);
cout<<ans;
return 0;
}
法2
代码如下:
#include <stdio.h>
int main()
{
int j,k2,k3,k5,k6,i;
scanf("%d%d%d%d",&k2,&k3,&k5,&k6);
j=((k2<k5?k2:k5)<k6?(k2<k5?k2:k5):k6);
i=k2-j<k3?k2-j:k3;
printf("%d",j*256+i*32);
return 0;
}
总结
水题!但是做完这道题后,我越发感觉通过沟通与交流优化自己代码的重要性。