Pagini recente » Cod sursa (job #2747955) | Cod sursa (job #60674) | Cod sursa (job #1891313) | Cod sursa (job #280392) | Cod sursa (job #2853121)
#include <bits/stdc++.h>
using namespace std;
ifstream in("tribute.in");
ofstream out("tribute.out");
#define aa for(i = 0; i<=cod.first; i++){for(j = 0; j<=cod.second; j++) out<<c[i][j]<<" "; out<<"\n";}
int n, m1, m2, c[1001][1001], i, dm, j, x, y, z;
pair <int, int> cod, ins, a;
vector <pair <int, int>> v;
int sbt(pair <int, int> l){
int min = 999;
for(x = l.first; x<=l.second; x++){
for(y = l.first; y<=l.second; y++){
dm = 0;
for(z = 0; z<n; z++){
if(v[z].first >= x && v[z].first <= x+m1 && v[z].second >= y && v[z].second <= y+m2) dm += 0;
else
dm += abs(x-v[z].first) + abs(y-v[z].second);
}
if(dm<min) min = dm;
}
}
return min;
}
int bt(){
int sdm = 99999999, q;
for(i = 0; i<=cod.first; i++){
for(j = 0; j<=cod.second; j++){
a.first = i, a.second = j;
q = sbt(a);
if(q<sdm) sdm = q;
}
}
return sdm;
}
int main(){
in>>n>>m1>>m2;
for(i = 0; i<n; i++){
in>>ins.first>>ins.second;
v.emplace_back(ins);
if(ins.first>cod.first) cod.first = ins.first;
if(ins.second>cod.second) cod.second = ins.second;
c[ins.first][ins.second] = 1;
}
out<<bt()+1;
}