C. Ryouko's Memory Note
来源:互联网 发布:直播网络公会 编辑:程序博客网 时间:2024/05/22 10:42
#include <iostream>
#include <stdio.h>
#include <vector>
#include <cmath>
#include <string.h>
#include <algorithm>
using namespace std;
vector <int> num[100005];
int main()
{
int n,m;
scanf("%d %d",&n, &m);
long long int sum = 0;
long long int p,q;
scanf("%lld",&p);
for( int i = 1; i<m; i++)
{
scanf("%lld",&q);
sum += (long long int)fabs(q-p);
if(q!=p)
{
num[p].push_back(q);
num[q].push_back(p);
}
p = q;
}
long long int maxn = 0;
long long int temp = 0;
long long int ans = 0;
for( int i = 1 ; i <= n ;i++)
{
if(!num[i].size())
continue;
ans = 0;
sort(num[i].begin(), num[i].end());
temp = num[i][num[i].size()/2];
for( int j = 0; j< num[i].size();j++)
{
ans += (long long int )fabs(num[i][j] - i) - (long long int)fabs(num[i][j] - temp);
}
maxn = max(maxn,ans);
}
#include <stdio.h>
#include <vector>
#include <cmath>
#include <string.h>
#include <algorithm>
using namespace std;
vector <int> num[100005];
int main()
{
int n,m;
scanf("%d %d",&n, &m);
long long int sum = 0;
long long int p,q;
scanf("%lld",&p);
for( int i = 1; i<m; i++)
{
scanf("%lld",&q);
sum += (long long int)fabs(q-p);
if(q!=p)
{
num[p].push_back(q);
num[q].push_back(p);
}
p = q;
}
long long int maxn = 0;
long long int temp = 0;
long long int ans = 0;
for( int i = 1 ; i <= n ;i++)
{
if(!num[i].size())
continue;
ans = 0;
sort(num[i].begin(), num[i].end());
temp = num[i][num[i].size()/2];
for( int j = 0; j< num[i].size();j++)
{
ans += (long long int )fabs(num[i][j] - i) - (long long int)fabs(num[i][j] - temp);
}
maxn = max(maxn,ans);
}
printf("%lld\n",sum - maxn);}
// 傻呵呵的把输出的时候的sum-maxn写成sum-ans竟然改了一遍遍的没注意到
0 0
- C. Ryouko's Memory Note
- Codeforces 433C Ryouko's Memory Note
- Codeforces 433 C. Ryouko's Memory Note
- Codeforces 433 C Ryouko's Memory Note
- CF 433C Ryouko's Memory Note
- CF 248 C. Ryouko's Memory Note
- Codeforces 433C Ryouko's Memory Note
- Codeforces433 C Ryouko’s Memory Note
- codeforces #433C Ryouko's Memory Note
- Codeforces Round #248 (Div. 2) C.Ryouko's Memory Note
- Codeforces Round #248 (Div. 2) C. Ryouko's Memory Note
- CodeForces 433C Ryouko's Memory Note(暴力加中位数)
- codeforces #433C Ryouko's Memory Note(瞎搞)
- Codeforces Round #248 (Div. 2) C - Ryouko's Memory Note
- CodeForces 433C Ryouko's Memory Note (数学)
- Ryouko's Memory Note(书本翻页)
- codeforces248(div1) A. Ryouko's Memory Note
- Codeforces RoundC. Ryouko's Memory Note
- java中如何判定两个对象属于同一类
- Mybatis 一对多(OneToOne)关系映射
- 工作中常常会用到的git命令
- Jetty:基本功能介绍
- oracle over的用法
- C. Ryouko's Memory Note
- android 面试题
- JSP算术验证码
- [C/C++]warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]|
- caffe源码分析--data_layer.cpp
- 数据结构之链式链表
- android 4.2 input 子系统
- Key-Value Coding 01 - What is key-Value Coding
- java算术验证码,适用spring mvc/ssh等