알고리즘을 이렇게 생각해서
#include <iostream>
#include <algorithm>
using namespace std;
using i64 = long long;
int a[1000000];
int main() {
int a1, a2, a3, a4; //내린 사람
int b1, b2, b3, b4; //탄 사람
scanf("%d %d %d %d %d %d %d %d", &a1, &b1, &a2, &b2, &a3, &b3, &a4, &b4);
int max = b1;
int sum = b1;
sum += b2 - a2;
if(sum > max)
max = sum;
sum += b3 - a3;
if(sum > max)
max = sum;
printf("%d", max);
}
이렇게 코딩했다.
지금 든 생각인데 그냥 배열 만들어서 반복문 돌리는게 더 나았을 것 같다.
그리고 a1이랑 b4는 어차피 계산 안 하니깐 그냥 버려버리고
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int a1, a2, a3, a4; //내린 사람
int b1, b2, b3, b4; //탄 사람
scanf("%d %d %d %d %d %d %d %d", &a1, &b1, &a2, &b2, &a3, &b3, &a4, &b4);
int max_num = b1;
int sum = b1;
sum += b2 - a2;
max_num = max(max_num, sum);
sum += b3 - a3;
max_num = max(max_num, sum);
printf("%d", max_num);
}
if(sum > max)
max = sum;
큰 건 아니지만 이렇게 비교해서 넣는 걸 max를 쓰면 더 깔끌하게 짤 수 있다. 게다가 몰랐는데 전에 쓴 코드를 수정 안 해서 long long과 a[1000000]이 남아있었다. ㅋㅋㅋ 어쩐지 메모리를 많이 잡아먹더라
'백준' 카테고리의 다른 글
10824 네 수 (0) | 2019.10.04 |
---|---|
10250 ACM 호텔 (0) | 2019.10.04 |
13458 시험 감독 (0) | 2019.10.03 |
2869 달팽이는 올라가고 싶다 (0) | 2019.10.03 |
2443 별 찍기 - 6 (0) | 2019.10.03 |