首页 > 其他分享 >AtCoder Beginner Contest 178 E

AtCoder Beginner Contest 178 E

时间:2023-10-01 21:01:21浏览次数:35  
标签:AtCoder Beginner Contest int max 178

AtCoder Beginner Contest 178 E

E - Dist Max 曼哈顿距离最大点对

\(ans = max(|x_i-x_j|+|y_i-y_j|)\)

考虑去绝对值,4种情况。sort一下取max即可。

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 2e5+10;
 
int x[N],y[N];
int p[4][N];
int main()
{
    ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
    int n;
    cin>>n;
    for(int i = 1;i <= n;i++)
    {
        cin>>x[i]>>y[i];
        p[0][i]=x[i]+y[i];
        p[1][i]=-x[i]+y[i];
        p[2][i]=x[i]-y[i];
        p[3][i]=-x[i]-y[i];
    }
    for(int i = 0;i < 4; i++)sort(p[i]+1,p[i]+1+n);
    int mx = 0;
    for(int i = 0;i < 4; i++)
    {
        mx = max(mx,p[i][n]-p[i][1]);
    }
    cout<<mx<<endl;
    return 0;
}

标签:AtCoder,Beginner,Contest,int,max,178
From: https://www.cnblogs.com/nannandbk/p/17739262.html

相关文章

  • AtCoder Beginner Contest 322
    A-FirstABC2解题思路签到Code#include<bits/stdc++.h>usingnamespacestd;typedeflonglongLL;voidsolve(){ intn; cin>>n; strings; cin>>s; intp=s.find("ABC"); if(p==-1)cout<<p<<'\n&......
  • Go每日一库之178:chromedp(一个基于Chrome DevTools协议的库,支持数据采集、截取网页长
    该库提供了一种简单、高效、可靠的方式来控制Chrome浏览器进行自动化测试和爬取数据。项目地址:https://github.com/chromedp/chromedp它可以模拟用户在浏览器中执行各种操作,如点击、输入文本、截取网页长图、将网页内容转换成pdf文档、下载图片等,从而获取到需要采集的数据。基......
  • 加训日记 Day3——atcoder ABC321乐子场
    Day3,9.23  ·打了场acwing周赛,第三题差点就想出来了,想歪到组合数上乱选了呜呜呜  ·ABC321场写的太抽象了,A题上来wa两次,B题少考虑情况乱wa  ·C题更是重量级,想不出来正确做法直接暴力,结果打表最后少写了几个数,纯纯犯病场  ·最后加了36分没绷住acwing周赛排名atcod......
  • AtCoder Regular Contest 123 F Insert Addition
    洛谷传送门AtCoder传送门用\((x,y)\)表示\(Ax+By\),那么这个等价于SB树。那么直接在SB树上二分,遍历一遍找到\(n\)个点就好了。可以采用类似线段树查询的方式。于是现在还剩下一个子问题:给定\(a,b\),求\(ax+by\len\)且\(\gcd(x,y)=1\)的正整数\((x,y......
  • AtCoder Regular Contest 127 F ±AB
    洛谷传送门AtCoder传送门非常妙的题。先直观感受一下,显然当\(M\)大到一定程度后,\([0,M]\)的所有数都能被取到。考虑\(V\getsV+Ax+By\),其中\(V+Ax+By\in[0,M]\)。如果\(x,y\)都是正数显然可以取到。如果一正一负,比如\(x>0,y\le0\),那可以先把\(V\)......
  • Atcoder ABC321 笔记
    A-321-likeChecker\(\color{gray}{22}\)直接模拟voidsolve(){intn;cin>>n;intlst=-1;for(inti=n;i;i/=10){intu=i%10;if(u<=lst){cout<<"No"<<endl;......
  • AtCoder Grand Contest 025
    A-DigitsSum按题意模拟即可。#include<iostream>#include<cstdio>usingnamespacestd;constintINF=1061109567;intn;intcalc(intx){intres=0;while(x)res+=x%10,x/=10;returnres;}intmain(){scanf("%d",&......
  • AtCoder Grand Contest 026
    A-ColorfulSlimes2可以发现,对于连续的一段长度为\(m\)的相同的字符,我们可以花费\(\lfloor\frac{m}{2}\rfloor\)的代价将它改为符合要求的。#include<iostream>#include<cstdio>usingnamespacestd;constintN=105;intn;inta[N];intmain(){scanf("%d"......
  • AtCoder Grand Contest 022
    A-DiverseWord如果至少有一个字符没有出现过,只要在原字符串后面加入一个没有出现过的字符中最小的那个字符就好了。如果所有字符都出现过,找到一个尽量靠后的位置\(i\in[1,n)\),使得\(s_i\lts_{i+1}\),最优字符串将\(s_i\)换成\([i+1,n]\)里面比\(s_i\)大的最小的那个......
  • AtCoder Grand Contest 023
    A-Zero-SumRanges令\(s_n=\sum\limits_{i=1}^na_i\),相当于找满足\(l\ler,s_r-s_{l-1}\)的点对\((l,r)\)的个数,直接搞就完事了。#include<iostream>#include<cstdio>#include<unordered_map>usingnamespacestd;constintN=200005;intn;inta[N]......