오늘의 문제!
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class 도미노게임_34053 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
int minNum = Integer.MAX_VALUE;
long sum = 0;
for (int i = 0; i < n; i++) {
st = new StringTokenizer(br.readLine());
for (int j = 0; j < m; j++) {
int num = Integer.parseInt(st.nextToken());
sum += num;
if (num < minNum) {
minNum = num;
}
}
}
bw.write((sum - minNum) + "");
bw.flush();
bw.close();
}
}
이 문제는 무턱대고 모든 경우의 수를 해볼수가 없는게, 최대 1000X1000짜리 보드에 각 숫자들만 해도 최대 10^9까지 나오니까 1초안에 절대 안된다..
그래서 뭔가 간단하게 팍 풀리는게 있겠구나. 싶어서 그냥 다 더하면 안되나? 했다가 눈치챘다. 제일 작은 수를 0 만들고 나면 걔 기준으로 나머지는 무조건 1회씩이니까 전체합에서 제일 작은놈을 0으로 만들때까지 쓰이는 나머지부분을 제외하고 출력하면 된다.
오늘은 아침부터 의정부로 넘어와서 형네집에서 문제도 풀고 글도쓴당.
점심부터 스테이크에 파스타.. 와.. 머쉬룸 파스타 존맛이더라..
그리고 돌아와서 놉크릭, 라프로익 10cs, 아드벡 19 트라이반, 이글레어까지 든든하게 먹고 형수님이 일본에서 사오신 간식들 야무지게 먹었당.
그 마늘후레이크 들어간 라유는 일본가면 무조건 사와야지... ㅎㅎ