# 구현
각 가로 축, 세로 축에 대해서 최대 값을 표시해 뒀다가,
나중에 더할때 빼고 더해주면된다.
더할떄 longlong형 주의^^;;
#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> #include <vector> #include <queue> #include <set> #include <map> #define MAX 1005 #define INF 987654321 #define MOD 1000000 #pragma warning(disable:4996) using namespace std; typedef long long ll; typedef pair<int, int> pi; int y,x,box[MAX][MAX]; bool tf[MAX][MAX]; int main() { scanf("%d%d",&y,&x); for(int i=1;i<=y;i++) for(int j=1;j<=x;j++) scanf("%d",&box[i][j]); for(int i=1;i<=y;i++) { int mx=-1; pi p; for(int j=1;j<=x;j++) if(mx<box[i][j]) { mx=box[i][j]; p={i,j}; } tf[p.first][p.second]=true; } for(int i=1;i<=x;i++) { int mx=-1; pi p; for(int j=1;j<=y;j++) if(mx<box[j][i]) { mx=box[j][i]; p={j,i}; } tf[p.first][p.second]=true; } ll sum=0; for(int i=1;i<=y;i++) for(int j=1;j<=x;j++) if(!tf[i][j]) sum+=(ll)box[i][j]; printf("%lld",sum); return 0; }
'IT > BOJ' 카테고리의 다른 글
백준(BOJ) 14753 MultiMax (0) | 2018.08.10 |
---|---|
백준(BOJ) 13325 이진트리 * (0) | 2018.08.10 |
백준(BOJ) 14746 Closest Pair * (0) | 2018.08.08 |
백준(BOJ) 1097 마법단어 ** (0) | 2018.08.01 |
백준(BOJ) 15897 잘못 구현한 에라토스테네스의 체 (0) | 2018.07.31 |