작성
·
228
0
안녕하세요 강사님. 방금 전 연속 부분 증가수열을 풀었던 방식으로 졸리 점퍼 문제를 풀어봤습니다. 마찬가지로 i와 i+1의 관계에 집중해서 문제를 풀어봤고, 1부터 n-1의 합과 abs(a[i + 1] - a[i]);를 비교해보았습니다.
절반은 맞고 절반은 틀립니다.. 반드시 강사님처럼 pre와 now 변수를 이용해 풀어야 하는것인가요?
https://gist.github.com/k3kys/9c33f6da1b4f473cb1df5725c1105170
답변 2
0
제가 abs를 했을 때에는 문제 없이 잘 풀렸습니다
아래 코드를 올려드리겠습니다
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
int arr[101];
int unf[101];
int res = 0,cnt=1;
int mmax = 0;
int main()
{
int n, m;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> arr[i];
}
for (int i = 1; i < n; i++)
{
res = arr[i - 1];
cnt = abs(res - arr[i]);
if (cnt < n)
{
unf[cnt] = 1;
}
}
for (int i = 1; i < n; i++)
{
if (unf[i] == 0)
{
cout << "NO";
return 0;
}
}
cout << "YES";
}
위와 같이 O(n)으로 abs를 이용해 해결 가능합니다
5번 오류같은 경우는 배열을 101정도로 작게 선언해서 그런 걸로 보이고 다른 건 모르겟네요..
참고바랍니다
0