안녕하세요. 오늘은 왕복을 할 거예요.
https://www.acmicpc.net/problem/18311
차근차근 빼줍시다.
남은 거리에서 현재 거리를 뺐을 때 음수라면, 즉 현재 거리를 다 가지 못한다면 현재 번호를 출력해줍니다.
#include <iostream>
#define ll long long
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(false); cin.tie(NULL);
ll N, K, i, arr[101010] = { 0 };
cin >> N >> K;
for (i = 1; i <= N; i++) cin >> arr[i];
for (i = 1; i <= N; i++)
{
if (K - arr[i] < 0)
{
cout << i;
return 0;
}
K -= arr[i];
}
for (i = N; i >= 1; i--)
{
if (K - arr[i] < 0)
{
cout << i;
return 0;
}
K -= arr[i];
}
}
감사합니다.