51NOD-1960-数学/贪心

第一行两个数n,m,接下来一行m个数表示a
一个数表示答案
2 2
2 3
37
G*V的和可以转化为SUM{ (1+ai+...+ain-1)*(xk+xk+1+....+xk+n-1) }
前面为一个等比数列,每个a[i]对应一个,显然将较大的x分配给较大的a[i]结果越大。
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <queue>
#include<cmath>
using namespace std;
#define LL long long
LL MOD=1e9+;
LL a[];
LL qpow(LL a,LL b,LL M){
LL r=;
while(b){
if(b&) r=r*a%M;
a=a*a%M;
b>>=;
}
return r;
}
void gcd(LL a,LL b,LL &d,LL &x,LL &y){
if(!b) {
d=a;
x=;
y=;
}
else{
gcd(b,a%b,d,y,x);
y-=x*(a/b);
}
}
LL inv(LL a,LL n){
LL d,x,y;
gcd(a,n,d,x,y);
return d==?(x+n)%n:-;
}
int main()
{
LL n,m,i,j,k;
cin>>n>>m;
for(i=;i<=m;++i) scanf("%lld",a+i);
sort(a+,a+m+);
LL ans=;
for(i=;i<=m;++i){
LL X=(i*n%MOD++(i-)*n%MOD)*n%MOD*inv(,MOD)%MOD;
LL A;
a[i]%=MOD;
if(a[i]==) A=;
else if(a[i]==) A=n;
else A=(qpow(a[i],n,MOD)-)*inv(a[i]-,MOD)%MOD;
ans=(ans+X*A%MOD)%MOD;
}
cout<<ans<<endl;
return ;
}
51NOD-1960-数学/贪心的更多相关文章
- 51nod 1432 - 独木舟 - [贪心]
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1432 基准时间限制:1 秒 空间限制:131072 KB ...
- 洛谷3月月赛div2 题解(模拟+数学+贪心+数学)
由于本人太蒻了,div1的没有参加,胡乱写了写div2的代码就赶过来了. T1 苏联人 题目背景 题目名称是吸引你点进来的. 这是一道正常的题,和苏联没有任何关系. 题目描述 你在打 EE Round ...
- UVALive 7147 World Cup(数学+贪心)(2014 Asia Shanghai Regional Contest)
题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&category=6 ...
- HDOJ 5073 Galaxy 数学 贪心
贪心: 保存连续的n-k个数,求最小的一段方差... .预处理O1算期望. .. Galaxy Time Limit: 2000/1000 MS (Java/Others) Memory Lim ...
- FZU 2144 Shooting Game(数学+贪心)
主要思路:求出蚊子到达球的时间区间(用方程得解),对区间做一个贪心的选择,选择尽可能多的区间有交集的区间段(结构体排序即可),然后计数. #include <cstdio> #includ ...
- hdu 3573(数学+贪心)
Buy Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- hdu 5747(数学,贪心)
Aaronson Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total ...
- 51nod 1243 二分+贪心
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1243 1243 排船的问题 题目来源: Codility 基准时间限制: ...
- Codeforces Round #323 (Div. 2) C 无敌gcd 数学/贪心
C. GCD Table time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- [51nod] 1432 独木桥 贪心
n个人,已知每个人体重.独木舟承重固定,每只独木舟最多坐两个人,可以坐一个人或者两个人.显然要求总重量不超过独木舟承重,假设每个人体重也不超过独木舟承重,问最少需要几只独木舟? Input 第一行包含 ...
随机推荐
- Python 集合(set)的使用总结
集合的特点:去重.无序,因此无法通过下标取值. 1. 定义集合 s = set() #定义空的集合 s2 = {'} # 不是key -value形式的话就是集合,不是字典 s3 ={'} print ...
- jmeter 请求发送加密参数(加密接口测试一)
最近在做http加密接口,请求头的uid参数及body的请求json参数都经过加密再发送请求,加密方式为:ase256.所以,jmeter发送请求前也需要对uid及json参数进行加密.我这里是让开发 ...
- HTML5游戏开发系列教程4(译)
原文地址:http://www.script-tutorials.com/html5-game-development-lesson-4/ 这篇文章是我们继续使用canvas来进行HTML5游戏开发系 ...
- mysql数据库从删库到跑路之mysql其他
一 IDE工具介绍 生产环境还是推荐使用mysql命令行,但为了方便测试,可以使用IDE工具 下载链接:https://pan.baidu.com/s/1bpo5mqj 掌握: #1. 测试+链接数据 ...
- HDU - 2732 Leapin' Lizards (拆点最大流)
题意:有N*M的矩形,每个格点有一个柱子,每根柱子有高度c,允许蜥蜴经过这根柱子c次,开始有一些蜥蜴在某些柱子上,它们要跳出这个矩形,每步最大能跳d个单位,求最少有多少蜥蜴不能跳出这个矩形. 分析:转 ...
- Use the SVN command-line tool
欢迎关注我的社交账号: 博客园地址: http://www.cnblogs.com/jiangxinnju/p/4781259.html GitHub地址: https://github.com/ji ...
- 谷歌技术"三宝"之谷歌文件系统(转)
原文地址:http://blog.csdn.net/opennaive/article/details/7483523 题记:初学分布式文件系统,写篇博客加深点印象.GFS的特点是使用一堆廉价的商用计 ...
- Python3.x:BeautifulSoup()解决中文乱码问题
Python3.x:BeautifulSoup()解决中文乱码问题 问题: BeautifulSoup获取网页内容,中文显示乱码: 解决方案: 遇到情况也是比较奇葩,利用chardet获取网页编码,然 ...
- centos7安装kvm环境采用网桥模式并创建虚拟机制作openstack需要的镜像
初始环境的安装:centos7 mini iso镜像进行安装的系统 采用的环境是vm该软件,联网方式NAT模式下配置的静态ip(如何在NAT模式下配置静态ip参考之前的文章) 1.由于要安装kvm环境 ...
- MongoDB-与Python交互
与python交互 点击查看官方文档 安装python包 进入虚拟环境 sudo pip install pymongo 或源码安装 python setup.py 引入包pymongo import ...