작성
·
269
0
psum이를 사용하려한게 좋은 접근은 아닐까요..?
#include <bits/stdc++.h>
using namespace std;
int A, B, C;
int ariv_t[3]; int leav_t[3]; int psum[104];
int howmuch(int cnt) { // 차가 몇대 있는지에 따라서 얼마 더할지 리턴
switch (cnt)
{
case 1:
return A;
case 2:
return 2 * B;
case 3:
return 3 * C;
default:
return 0;
}
}
int main()
{
int leav; int ariv;
cin >> A >> B >> C;
for (int i = 0; i < 3; i++) {
cin >> ariv >> leav;
ariv_t[i] = ariv; leav_t[i] = leav;
}
int cnt = 0;
sort(ariv_t,ariv_t+3);
sort(leav_t, leav_t + 3);
for (int i = 1; i <= leav_t[2]; i++) {
if (find(ariv_t, ariv_t + 3, i) != ariv_t + 3)
cnt++;
if (find(leav_t, leav_t + 3, i) !=leav_t+3 ) // find 탐색 실패시 _Last 이터레이터를 반환함.
cnt--;
psum[i] = psum[i - 1] + howmuch(cnt);
}
printf("%d", psum[leav_t[2]]);
return 0;
}
앞길이 멀지만 우직하게 걸어나가겠습니다. 감사합니다