/*
Every tenant went up N floors would make the dissatisfied degree rise N * a + 0.5 * N * (N - 1) degrees,
every tenant went down N floors would make the dissatisfied degree rise N * b + 0.5 * N * (N - 1) degrees. △= Dp+1 – Dp
= ∑1=<i<=p Ki*(b+p-i)) - ∑p<i<=n Ki*(a+i-p-1)
= ∑1=<i<=n Ki * i +(b+p)*∑1=<i<=p Ki - (a-p-1)∑p<i<=n Ki
*/ #include <iostream>
#define MAXN 10001
using namespace std; __int64 _m[MAXN+];
int k[MAXN+];
__int64 p_2[MAXN+];
__int64 p_3[MAXN+];
int k_1[MAXN];
int k_2[MAXN]; int main()
{
//freopen("acm.acm","r",stdin);
int test;
int n;
int i;
int j;
int p_1;
int a;
int b;
scanf("%d",&test);
while(test --)
{
scanf("%d",&n);
scanf("%d",&a);
scanf("%d",&b); for(i = ; i <= n; ++ i)
{
scanf("%d",&k[i]);
} for(i = ; i <= n; ++ i)
{
k_1[i] = k_2[i] = k[i];
} for(i = n-; i >=; -- i)
{
k_2[i] += k_2[i+];
} for(i = ; i <= n; ++i)
{
k_1[i] += k_1[i-];
} p_1 = ;
for(i = ; i <= n; ++ i)
{
p_1 += k[i]*i;
} for(i = ; i <= n; ++ i)
{
p_2[i] = (b + i)*k_1[i];
} for(i = ; i <= n; ++ i)
{
k_2[i] -= k[i];
} copy(k_2,k_2+n+,p_3); for(i = ; i <= n; ++ i)
{
p_3[i] *= (a-i-);
}
_m[] = ;
for(i = ; i <= n; ++ i)
{
_m[] += (i-)*a+((i-)*(i-)/);
} for(i = ; i <= n; ++ i)
{
_m[i] = _m[i-] - p_1 + p_2[i-] - p_3[i-];
} __int64 min = ; int place; for(i = ; i <= n; ++ i)
{
if(_m[i] < min)
{
min = _m[i];
place = i;
}
}
cout<<place<<endl;
}
}

关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。

技术网站地址: vmfor.com

POJ 1701的更多相关文章

  1. poj 1701【数学几何】

    The area Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  2. POJ 题目分类(转载)

    Log 2016-3-21 网上找的POJ分类,来源已经不清楚了.百度能百度到一大把.贴一份在博客上,鞭策自己刷题,不能偷懒!! 初期: 一.基本算法: (1)枚举. (poj1753,poj2965 ...

  3. (转)POJ题目分类

    初期:一.基本算法:     (1)枚举. (poj1753,poj2965)     (2)贪心(poj1328,poj2109,poj2586)     (3)递归和分治法.     (4)递推. ...

  4. poj分类

    初期: 一.基本算法:      (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法.      ( ...

  5. poj 题目分类(1)

    poj 题目分类 按照ac的代码长度分类(主要参考最短代码和自己写的代码) 短代码:0.01K--0.50K:中短代码:0.51K--1.00K:中等代码量:1.01K--2.00K:长代码:2.01 ...

  6. POJ题目分类(按初级\中级\高级等分类,有助于大家根据个人情况学习)

    本文来自:http://www.cppblog.com/snowshine09/archive/2011/08/02/152272.spx 多版本的POJ分类 流传最广的一种分类: 初期: 一.基本算 ...

  7. POJ题目分类(转)

    初期:一.基本算法:     (1)枚举. (poj1753,poj2965)     (2)贪心(poj1328,poj2109,poj2586)     (3)递归和分治法.     (4)递推. ...

  8. POJ题目细究

    acm之pku题目分类 对ACM有兴趣的同学们可以看看 DP:  1011   NTA                 简单题  1013   Great Equipment     简单题  102 ...

  9. POJ题目(转)

    http://www.cnblogs.com/kuangbin/archive/2011/07/29/2120667.html 初期:一.基本算法:     (1)枚举. (poj1753,poj29 ...

随机推荐

  1. 不用Unity库,利用.NET动态代理自己实现AOP

    AOP意为面向切面的程序设计,主要表现为对不同的代码逻辑进行隔离,从而降低不同业务逻辑之间的耦合性,AOP又理解为“横切”,可以在不改变原有实现的情况下,对代码进行拦截和扩展,如果原有设计像一个瓶子, ...

  2. js设计模式(7)---装饰者模式

    0.前言 下午做事效率很低,无精打采的,整个脑子就跟浆糊一样,看看时间一点点流去,心中只能无可奈何,哎,码农的激情难道就这么容易熄灭吗? 1.该模式的使用情况 假如我们想给对象增加功能,但是又不想修改 ...

  3. 2013-07-22 IT 要闻速记快想

    ### ========================= ### 如何让用户点击广告.观看广告并乐在其中?这个问题的答案精彩纷呈.有的公司开创模式,为点击广告的用户提供优惠券:有的公司想法新奇,让用 ...

  4. apache 配置虚拟主机

    1    打开httpd.conf 找到 # Virtual hosts #Include conf/extra/httpd-vhosts.conf [由于apache的版本不同,可能你ctrl+F ...

  5. 关于iOS6应用中第三方类库不支持armv7s的问题解决

    今天编译ios6+cocos2d v2 .1 beta2制作的游戏,出现下面的错误: ld: file is universal (3 slices) but does not contain a(n ...

  6. 一,XAML基础

    RuntimeNameProperty特性:为什么<Grid x:Name="grid1"></Grid>等价于<Grid Name="gr ...

  7. linux 标准io笔记

    三种缓冲 1.全缓冲:在缓冲区写满时输出到指定的输出端. 比如对磁盘上的文件进行读写通常是全缓冲的. 2.行缓冲:在遇到'\n'时输出到指定的输出端. 比如标准输入和标准输出就是行缓冲, 回车后就会进 ...

  8. Ubuntu下编程环境GNU安装

    ubuntu下C编程   环境搭建 其实,linux下写C也是很容易的.IDE的话用 eclipse 集成 CDT 模块就行了.当然这属于重量级的了,就如同VC++之于windows一样.那有没有像T ...

  9. 从零开始学ios开发(十四):Navigation Controllers and Table Views(上)

    这一篇我们将学习一个新的控件Navigation Controller,很多时候Navigation Controller是和Table View紧密结合在一起的,因此在学习Navigation Co ...

  10. C# 实现Oracle中的数据与Excel之间的转换

    最近项目要求实现数据库之间数据在各个数据库之间导入导出,在此做个笔记 1. 将Oracle中的表导入到Excel中,反之亦然  private static readonly string conne ...