任意一堆移动过后的石子都是整数x的倍数,

那么石子总数显然也应该是x的倍数,

换句话说,x必为石子数总和的一个质因子.

题目要求移动次数尽量小,那么x也应该尽量小.

所以选择石子数总和的最小质因子.

对每堆石子数进行取模运算即可知道每堆石子需要移走或增加多少石子.

然后就可以开始模拟了.

把取模后的石子数进行从大到小的排序并求出取模后的石子总数,

然后求出可以组成x的个数.

用大石子堆到小石子堆去减这些x,在累加起来,即得到最少移动次数.

 #include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll; ll arr[];
// 得到第一个质因子
ll getFac(ll x)
{
for (ll i = ; i <= x; i++)
if (x % i == )
return i;
return -;
} bool cmp(ll a, ll b)
{
return a >= b;
} int main()
{
ios::sync_with_stdio(false);
cin.tie(); int n;
cin >> n;
ll sum = ;
for (int i = ; i < n; i++) {
cin >> arr[i];
sum += arr[i];
} // 最小质因子的余数系最小
ll num = getFac(sum);
sum = ;
for (int i = ; i < n; i++) {
arr[i] = arr[i] % num;
sum += arr[i];
} // 模拟
sort(arr, arr + n, cmp);
ll k = sum / num;
ll ans = ;
for (int i = ; i < k; i++) {
ans += num - arr[i];
}
cout << ans << endl;
return ;
}

2A - Stone的更多相关文章

  1. 红米2A高配刷机记录

    2014816 机型:红米2A高配版 设备型号:2014816 CPU:高通 线刷:fastboot平台 http://192.168.7.118/MesReports/Reports/Cutting ...

  2. POJ1740A New Stone Game[组合游戏]

    A New Stone Game Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5769   Accepted: 3158 ...

  3. timus 1180. Stone Game 解题报告

    1.题目: 1180. Stone Game Time limit: 1.0 secondMemory limit: 64 MB Two Nikifors play a funny game. The ...

  4. mac上执行sed的编辑 -i命令报错sed: 1: "test.txt": undefined label ‘est.txt’或sed: 1: "2a\test\": extra characters after \ at the end of a command

    问题一 sed编辑命令:[sed -i 's/a/b/g' test.txt]   报错:sed: 1: "test.txt": undefined label 'est.txt' ...

  5. HDU 4048 Zhuge Liang's Stone Sentinel Maze

    Zhuge Liang's Stone Sentinel Maze Time Limit: 10000/4000 MS (Java/Others)    Memory Limit: 32768/327 ...

  6. POJ 1740 A New Stone Game

    A New Stone Game Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 5453   Accepted: 2989 ...

  7. Light OJ 1296 - Again Stone Game (博弈sg函数递推)

    F - Again Stone Game Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu ...

  8. poj 1115 Lifting the Stone 计算多边形的中心

    Lifting the Stone Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u S ...

  9. 【POJ】A New Stone Game(博弈论)

    http://poj.org/problem?id=1740 题目大意就是,对于n堆石子,每堆若干个,两人轮流操作,每次操作分两步,第一步从某堆中去掉至少一个,第二步(可省略)把该堆剩余石子的一部分分 ...

随机推荐

  1. OK6410&nbsp;linux系统遇到的BUG总结

    经过一段时间使用OK6410 256M RAM 2G nand Flash碰见了不少问题. 所以特意开本贴一起交流.大家有什么BUG解决的可以跟上本帖.求助的请另开贴.勿跟本帖.谢谢.请谅解!!! 希 ...

  2. Oracle 环境下 GoldenGate 集成抽取(Integrated Capture)模式与传统抽取模式(Classic Capture)间的切换

    检查抽取进程模式 在 GGSCI 环境下,执行类似如下语句查看特定进程的状态. GGSCI> info <Group_Name> 其中,<Group_Name> 为进程名 ...

  3. java Web jsp页面的静态包含和动态包含

    现在有头 体 尾 三个jsp页面 top.jsp <%@ page language="java" contentType="text/html; charset= ...

  4. 2-1 CPU多级缓存-缓存一致性.mkv

  5. Python_13-Office文件数据操作

    目录: 1.1      安装win32com模块 1.2      Access数据库操作 1.2.1       建立db1.db数据库,设计一张表t_student_b 1.3      Exc ...

  6. [luogu3369]普通平衡树(替罪羊树模板)

    解题关键:由于需要根据平衡进行重建,所以不能进行去重,否则无法保证平衡性. #include<cstdio> #include<cstring> #include<alg ...

  7. mfs教程(三)

    mfs文件系统(三) 使用  MooseFS 一.挂载文件系统 启动管理服务器(master server)和数据服务器(chunkservers) (chunkservers一个是必需的,但至少两个 ...

  8. Django框架 之 跨域请求伪造

    Django框架 之 跨域请求伪造 浏览目录 同源策略与Jsonp 同源策略 Jsonp jQuery对JSONP的实现 CORS 简介 两种请求 同源策略与Jsonp 同源策略 同源策略(Same ...

  9. (转)Asp.net页面生命周期详解任我行(1)-小试牛刀,编写页面代码

    原文地址:http://www.cnblogs.com/xuyubing/archive/2013/10/01/3348344.html 前言 很久很久以前,还是我在学校的时候,我就看了传智里面视频, ...

  10. (转)Web API 强势入门指南

    原文地址:http://www.cnblogs.com/developersupport/p/aspnet-webapi.html Web API是一个比较宽泛的概念.这里我们提到Web API特指A ...