Pagini recente » Cod sursa (job #775177) | Cod sursa (job #105017) | Cod sursa (job #1847335) | Cod sursa (job #778490) | Cod sursa (job #2202126)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#define NMAX 501
using namespace std;
ifstream fin("elimin.in");
ofstream fout("elimin.out");
vector < pair < int , int > > L;
int N,M,R,C,a[NMAX][NMAX],suma;
struct punct
{
int sum,indx;
}v[101],v1[101];
int cmp(const punct &a, const punct &b)
{
return a.sum < b.sum;
}
int main()
{
fin>>N>>M>>R>>C;
for(int i =1 ; i <= N; i++)
for(int j = 1; j <= M; j++)
fin>>a[i][j];
for(int i =1 ; i <= N; i++)
{
suma=0;
for(int j = 1; j <= M; j++)
suma+=a[i][j];
v[i].sum=suma;
v[i].indx=i;
}
sort(v+1,v+N+1,cmp);
for(int i =1 ; i <= R; i++)
{
for(int j =1 ; j<= N; j++)
a[v[i].indx][j]=0;
}
for(int i =1 ; i <= M; i++)
{
suma=0;
for(int j =1 ; j <= N; j++)
suma+=a[j][i];
v1[i].sum=suma;
v1[i].indx=i;
}
sort(v1+1,v1+N+1,cmp);
for(int i =1 ; i <= C; i++)
{
for(int j =1 ; j <= N; j++)
a[j][v1[i].indx]=0;
}
suma=0;
for(int i = 1; i <= N; i++)
{
for(int j =1; j <= M; j++)
suma+=a[i][j];
}
fout<<suma;
return 0;
}