Codeforces Round #198 (Div. 2) —— C
2024-10-18 18:21:31
C题很容易看懂题目,不过两个循环肯定会TLE,所以得用点小聪明;
首先排好序,因为是全排列,乱序和顺序的结果是一样的;
然后呢····
如果是数列 1 2 3 4 5
元素1 被 2 3 4 5每个减了2次,它自己减0一次;相抵后为-7;
元素2 被 3 5 4 每个减了2次,它减1两次,减0一次;相抵后为 -3;
元素3 相抵后为1;
可以发现他们的数量相差4;这样就好办了,一个循环就搞定了;
代码:
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int a[];
long long gcd(long long a,long long b)
{
return b==?a:gcd(b,a%b);
}
int main()
{
long long ans=,n,t;
cin>>n;
for(long long i=; i<n; i++)
scanf("%d",&a[i]);
sort(a,a+n);
t=-*n;
for(long long i=; i<n; i++,t+=)
ans+=a[i]*t;
long long k=gcd(ans,n);
cout<<ans/k<<" "<<n/k<<endl;
return ;
}
最新文章
- 解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题。 (默认mysql连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池。系统发布第二天访问链接关闭问题。
- SEO:避免关键词内部竞争带来的无法收录问题,
- Windows Phone 十七、Socket
- (转)redis 3.0的集群部署
- [Nginx] 在Linux下的启动、停止和重加载
- 转发 win7+iis7.5+asp.net下 CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files 解决方案
- VS2012/2013 停止调试后,无法刷新页面
- 讽刺的是,我在linux下使用最多的命令,竟然是windows的
- docker的四种网络模式
- webService—使用javaxws发布自己的webService
- php里面为什么header之前有输出报错 源码分析
- 2016多校第六场题解(hdu5793&;hdu5794&;hdu5795&;hdu5800&;hdu5802)
- C - 下沙小面的(2)
- form表单验证提示语句
- 【Spring 核心】装配bean(三)XML配置
- NATAPP 内网映射,Visual Studio ,C# 实现本地开发微信公众号,本地调试无需服务器
- python datetime操作
- Nginx代理MysqlCluster集群(二)
- poj2524(并查集水题)
- seo中的竞价排名是什么
热门文章
- [Form Builder]NAME_IN()与COPY()
- [置顶] linux第二天,g++,gcc,ps,cat,sort,grep,kill,less,ls -l ,
- javascript调用oc的方法
- html-----008
- Javascript 数组自定义排序,并获取排序后的保存原索引的同序数组(堆排序实现)
- windows server 2003 取消登录Ctrl+Alt+delete
- Ibatis学习记录
- CF Round#240题解
- java特殊运算符(转)
- (转)iOS中3种正则表达式的使用与比较