Областная олимпиада по информатике. 10-11 классы. 2014-2015 учебный год.
Есеп B. Тима және нүктелер
Ограничение по времени:
1 секунд
Ограничение по памяти:
64 мегабайта
Манхэттен көшелерiнде сiздi Тима деген өте күшi көп бала ұстап алды. Денеңiз сау болып құтылудың жалғыз бiр жолы — осы есептi шешу! 3D кеңiстiкте $N$ нүкте берiледi. Ара-қашықтығы ең ұзақ болатын екi нүкте табуыңыз сұралады. $(x_1; y_1; z_1)$ және $(x_2; y_2; z_2)$ нүктелерiнiң арасындағы қашықтық $|x_1-x_2|+|y_1-y_2| + |z_1-z_2|$ — ге тең. Есептi шығарып өзiңдi құтқар!
Формат входного файла
Бiрiншi жолда бiр бүтiн саны берiледi — $N$ $(2 \le N \le 10^5)$ — нүктелер саны. Келесi $N$ жолда нүктелер берiледi — әр жолда үш бүтiн саннан — $x_i;$ $y_i;$ $z_i.$ Нүктелер координаттары $[-10^6 \ldots 10^6]$ арасында.
Формат выходного файла
Бiр сан — арасы ең қашық нүктелердiң ұзындығы.
Примеры:
Вход 4 0 9 -8 -2 5 3 6 -6 2 7 1 6Ответ
31
Замечание
Жауап 31, өйткенi 1-шi мен 3-шi нүктелерiнiң арасы $|0-6| + |9-(-6)| + |-8-2| = 6 + 15 + 10 = 31;$
$2 \le N \le 10^4$ — $30\%$ тест үшiн.
Комментарий/решение:
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=10e5+7;
int a[N],b[N],c[N];
main(){
int mx=-N;
int n;
cin>>n;
for(int i=1;i<=n;++i){
cin>>a[i]>>b[i]>>c[i];
}
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
mx=max(mx,abs(a[i]-a[j])+abs(b[i]-b[j])+abs(c[i]-c[j]));
}
}
cout<<mx;
Возможно, что при неправильном наборе формул, они будут
доредактированы модератором. При этом содержание не будет меняться.