USACO[19-20]Dec银组题解

Posted zcr-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了USACO[19-20]Dec银组题解相关的知识,希望对你有一定的参考价值。

1,MooBuzz

这题其实是道数学题。

我们先找找符合要求的数:1,2,4,7,8,11,13,14……

我们发现再往后找都是这8个数中的一个加15k如:16……19……29……

找规律发现k=n/8

ans=15*n/8+a[n%8](a[] = {14,1,2,4,7,8,11,13})

可我们发现n是8的倍数时会出错,特判一下当n%8==0时ans=15*n/8-1即可

#include <iostream>
#include <cstdio>
using namespace std;
int n, d;
int a[8] = {14, 1, 2, 4, 7, 8, 11, 13};
int main() {
    freopen("moobuzz.in", "r", stdin);
    freopen("moobuzz.out", "w", stdout);
    cin >> n;
    d = n / 8;
    if (n % 8) {
        cout << d * 15 + a[n % 8];
    } else {
        cout << d * 15 - 1;
    }
    fclose(stdin);
    fclose(stdout);
    return 0;
}

 持续更新ing

以上是关于USACO[19-20]Dec银组题解的主要内容,如果未能解决你的问题,请参考以下文章

luoguP3128 [USACO15DEC]最大流Max Flow 题解(树上差分)

BZOJ1591:[Usaco2008 Dec]Largest Fence 最大的围栏——题解

题解[Usaco2006 Dec]Cow Roller Coaster

题解Luogu P3110 [USACO14DEC]驮运Piggy Back

bzoj1715[Usaco2006 Dec]Wormholes 虫洞*

洛谷P2853 [USACO06DEC]Cow Picnic S 题解