Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stdafx.h"
- #include <stdio.h>
- #include <math.h>
- #include <conio.h>
- #include <iostream>
- #include <vector>
- #include <utility>
- using namespace std;
- const int MAXN = 3*1e4; // 1e4 - 10^4
- int x[MAXN+1];
- int y[MAXN+1];
- int n;
- int ans_min, ans_max;
- int pointmin2,pointmin1,pointmax2,pointmax1;
- void calculate(){
- ans_max = -3*1e4;
- ans_min = 3*1e4;
- int len;
- for(int i = 0; i < n; i++){
- for(int j = 0; j < n; j++){
- len = sqrt((x[i] - x[j])*(x[i] - x[j]) + (y[i] - y[j])*(y[i] - y[j])); // формула вычисления расстояние между двумя точками
- if(len > ans_max){
- pointmax1 = i;
- pointmax2 = j;
- ans_max = len;
- }
- if(len < ans_min){
- pointmin1 = i;
- pointmin2 = j;
- ans_min = len;
- }
- }
- }
- }
- int main(){
- scanf("%d", &n);
- for(int i = 0; i < n; i++){
- scanf("%d%d", &x[i], &y[i]);
- }
- calculate();
- printf("Точки с минимальным расстоянием: (%d,%d) и (%d,%d)\n", x[pointmin1], y[pointmin1],x[pointmin2],y[pointmin2]);
- printf("Точки с максимальным расстоянием: (%d,%d) и (%d,%d)\n", x[pointmax1], y[pointmax1],x[pointmax2],y[pointmax2]);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement