首页 > 其他 > 详细

小a与"204"(牛客)

时间:2019-01-22 21:02:07      阅读:169      评论:0      收藏:0      [点我收藏+]

原题

技术分享图片

公式

中间数字与变量之间乘号bug省略可能看着有点别扭例如8x2为8*x2

首先设扫一遍后0的个数为x0 2的个数为x2 4的个数为x4

①如果x0=x4

ans=32*x4+4

②如果x0>x4

定义now为x0-x4+1

(1)如果now>x2

ans=32x4+8x2

否则

ans=32x4+(2now-1)*4

③如果x0<x4

定义now为x4-x0

(1)如果now>x2

ans=32x0+8x2+16

否则

ans=32x0+(2now-1)*4+16

代码

#include <bits/stdc++.h>
using namespace std;
int bk[10];
int main()
{
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int n,t;
  cin>>n;
  while(n--)
  cin>>t,bk[t]++;
  if(bk[0]==bk[4])
  cout<<32*bk[4]+4;
  else if(bk[0]>bk[4])
  {
    int now=bk[0]-bk[4]+1;
    if(now>bk[2])
    cout<<32*bk[4]+bk[2]*8;
    else
    cout<<32*bk[4]+(2*now-1)*4;
  }
  else
  {
    int now=bk[4]-bk[0];
    if(now>bk[2])
    cout<<32*bk[0]+8*bk[2]+16;
    else
    cout<<32*bk[0]+(2*now-1)*4+16;
  }
}

小a与"204"(牛客)

原文:https://www.cnblogs.com/baccano-acmer/p/10306003.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!