【 Educational Codeforces Round 53 (Rated for Div. 2) D. Berland Fair】思維題
阿新 • • 發佈:2018-11-14
D. Berland Fair
題意
做法
程式碼
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
typedef long long ll;
const int maxn = 2e5+10;
ll a[maxn];
int main()
{
int n;
ll T;
scanf("%d%lld",&n,&T);
for(int i=1;i<=n;i++) scanf("%lld",&a[i]);
ll ans=0;
while(T)
{
ll sum=0;
ll cnt=0;
for(int i=1;i<=n;i++)
{
if(a[i]<=T)
{
cnt++;
sum+=a[i];
}
}
if(cnt==0) break;
if(T<sum)
{
for(int i=1;i<=n;i++)
{
if(T>=a[i])
{
ans++;
T-=a[i];
}
}
}
else
{
ans+=1LL*cnt*(T/sum);
T=T%sum;
}
}
printf("%lld\n",ans);
return 0;
}