Codeforces 427E Police Patrol
找中间的数,然后从两头取。
#include<stdio.h>
const int MAX = ;
int pos[MAX];
int main()
{
int n,m,tmp;
int i;
int pol;
long long ans,dis;
while(scanf("%d %d",&n,&m)!=EOF)
{
for(i=;i<=n;i++)
scanf("%d",&pos[i]);
pol=n/+;
tmp=m;
ans=;
for(i=;i<=pol;)
{
dis=;
while(i<=pol&&tmp--)
{
if(!dis)dis=pos[pol]-pos[i];
i++;
}
ans=ans+dis*;
tmp=m;
}
for(i=n;i>pol;)
{
dis=;
while(i>pol&&tmp--)
{
if(!dis)dis=pos[i]-pos[pol];
i--;
}
ans=ans+dis*;
tmp=m;
}
printf("%I64d\n",ans);
}
return ;
}
更加简洁的代码
1<<n 就是把1向左移N位
m>>=1 相当于m= m>>1,就是把m左移1位
#include <stdio.h>
using namespace std;
const int MAX_N = + ;
int n, m;
int arr[MAX_N];
int main()
{
scanf("%d %d", &n, &m);
for(int i = ; i < n; i++)
scanf("%d", &arr[i]);
int mid = n >> ;
//printf("mid:%d\n",mid);
long long res = ;
for(int i = n - ; i > mid; i -= m)
res += arr[i] - arr[mid];
for(int i = ; i < mid; i += m)
res += arr[mid] - arr[i];
res = res << ;
printf("%I64d\n", res);
return ;
}
Codeforces 427E Police Patrol的更多相关文章
- codeforces 427E
题意:给定一位空间里n个点的坐标,每个坐标有一个罪犯,现在要建一个警局,并且这个警局只有一辆车,车一次最多载m个人,问应建在哪是的抓回所有罪犯的路程和最小. 思路: 很明显建在罪犯的点上一定可以找到最 ...
- CodeForces - 796D Police Stations bfs
思路:删除尽量多的边使得所有点都能在限制距离之内到达一个警局,删除边会形成多棵子树,最多只能k棵.其实就是以每个警局为根结点,把整棵树划分为以警局为根结点的k棵树,说明要删除的边的数量就是k-1条,即 ...
- CodeForces 427A Police Recruits (水题)
题意:给定 n 个数,有正数和-1, -1表示罪犯,正数表示招了几个警察,一个警察只能看一个罪犯,并且要按顺序,问你有多少罪犯逃脱. 析:很简单么,从开始扫到最后,把是正数就加上,是-1判断剩余警察大 ...
- Codeforces Round #244 (Div. 2)
今天是水题集啊.... A. Police Recruits time limit per test 1 second memory limit per test 256 megabytes inpu ...
- xtu summer individual 6 D - Checkposts
Checkposts Time Limit: 2000ms Memory Limit: 262144KB This problem will be judged on CodeForces. Orig ...
- 2017年暑假ACM集训日志
20170710: hdu1074,hdu1087,hdu1114,hdu1159,hdu1160,hdu1171,hdu1176,hdu1010,hdu1203 20170711: hdu1231, ...
- Codeforces Round #130 (Div. 2) C - Police Station 最短路+dp
题目链接: http://codeforces.com/problemset/problem/208/C C. Police Station time limit per test:2 seconds ...
- Codeforces Round #408 (Div. 2) D - Police Stations
地址:http://codeforces.com/contest/796/problem/D 题目: D. Police Stations time limit per test 2 seconds ...
- Codeforces Round #130 (Div. 2) C. Police Station
题目链接:http://codeforces.com/contest/208/problem/C 思路:题目要求的是经过1~N的最短路上的某个点的路径数 / 最短路的条数的最大值.一开始我是用spf ...
随机推荐
- fft蝶形算法的特点
- Python 函数 min()
min() 函数 作用: min() 方法返回给定参数的最小值,参数可以为序列.x-数值表达式.y-数值表达式.z-数值表达式.返回给定参数的最小值. 语法: min( x, y, z, .... ...
- poj1011---DFS
题目的大意是给了你有限个棍子以及每个棍子的长度,而且所有的棍子都是由有限个长度相同的棍子截断得到的,让你求被截棍子的最小长度 搜索剪枝神题,做的我够呛 提供一个比较好的解题报告 http://www ...
- java 随意控制控件的位置
package chat1; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class chat1{ ...
- npm笔记和bower
生成package.json文件的方式就是dos下进入该文件夹,然后执行 npm init Bower简单点儿说就是通过nodejs直接下载GitHub上的js源码 首先你得有node,这里就不多做介 ...
- druid抛出异常:javax.management.InstanceAlreadyExistsException: com.alibaba.druid:type=DruidDataSource,id=xxx
第一种结论 (参考: https://www.cnblogs.com/youzhibing/p/6826767.html): 问题产生的根本原因还真是:同一实例被启动了两遍,Path为/SLBAdmi ...
- Linux学习笔记 - Shell 运算符篇
Shell 运算符分类 Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符 算数运算符 首先,使用 shell 算数运算符是,需要 ...
- day8-心得
1. Socket介绍 概念 A network socket is an endpoint of a connection across a computer network. Today, mos ...
- table 1PX 边框
.role_mod_tab{border:1px solid #E8E8E8; width:100%; color:#181818; font-size:14px; cellspacing:0; ce ...
- JAXB 专题二(BSP接口实战)
BSP下单接口 1.xml格式如下 <?xml version="1.0" encoding="utf-8"?> <Request servi ...