UESTC 1050 Different game 构造法

ProLightsfx 2016-9-14 160 9/14

Different game 构造法

Source

The 13th UESTC Programming Contest Final

My Solution

把第 i 种card的ci张卡先 ci/m分配给m个piles,多余的 ci % m 丢到最后,然后用 n*(n-1)/2  和 m*(m-1)/2 每次输入ci的时候计算并取模就好;
大致像这样构造
1 1 1 1 2 2 3 3 3 3 3 3 1 2 3

1 1 1 1 2 2 3 3 3 3 3 3 1 2 3

1 1 1 1 2 2 3 3 3 3 3 3 1 2 
1 1 1 1 2 2 3 3 3 3 3 3    2 
1 1 1 1 2 2 3 3 3 3 3 3    2 
1 1 1 1 2 2 3 3 3 3 3 3       

 

#include 
#include 
using namespace std;
const int HASH = 1000000007;
int main()
{
    int m, n, c;
    long long ans = 0;
    scanf("%d%d", &m, &n);
    for(int i = 1; i <= n; i++){
        scanf("%d", &c);
        ans = (ans + (c/m)*(m*(m-1)/2) + (c%m)*(c%m-1)/2) % HASH;
    }
    printf("%lld", ans);
    return 0;
}


非特殊说明,本博所有文章均为博主原创,未经许可不得转载。

https://www.prolightsfxjh.com/

Thank you!

                                                                                                                                             ------from ProLightsfx

- THE END -

ProLightsfx

11月15日20:51

最后修改:2024年11月15日
0

非特殊说明,本博所有文章均为博主原创,未经许可不得转载。

共有 0 条评论