티스토리 뷰

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비 - 인프런 | 강의

강의 저작권으로 인해 문제를 공개하지 않았으며, 답안 코드 혹은 성공한 코드가 작성된 게시글입니다.

23. 연속 부분 증가수열


2023년 2월 10일

#include <iostream>
#include <vector>

using namespace std;

int Check(vector<int> numbers)
{
		int count = 0;
		int maxCount = 0;
		int prevNum = 0;
		int length = numbers.size();
	
		for (int i = 0; i < length; i++)
		{
				if (numbers[i] >= prevNum)
				{
						count++;
						if (count > maxCount)
								maxCount = count;
				}
				else
						count = 1;
		
				prevNum = numbers[i];
		}
	
		return maxCount;
}

int main()
{
		int N = 0;
		cin >> N;
		vector<int> numbers;
	
		for (int i = 0; i < N; i++)
		{
				int temp = 0;
				cin >> temp;
		
				numbers.push_back(temp);
		}
	
		cout << Check(numbers);
	
		return 0;
}

23. Jolly Jumpers


2023년 2월 10일

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

string CheckNumbers(vector<int> numbers)
{
		int length = numbers.size();
		vector<int> check(length, 0);
	
		for (int i = 1; i < length; i++)
		{
				int dif = abs(numbers[i] - numbers[i - 1]);
				
				if (dif > 0 && dif < length && check[dif] == 0)
						check[dif]++;
				else
						return "NO";
		}
	
		return "YES";
}

int main()
{
		int N = 0;
		cin >> N;
	
		vector<int> numbers;
	
		for (int i = 0; i < N; i++)
		{
				int temp = 0;
				cin >> temp;
		
				numbers.push_back(temp);
		}
	
		cout << CheckNumbers(numbers);
	
		return 0;
}

절대값으로 만드는 이유는 음수가 나올 수 있기 때문에 **abs(int value)**를 사용하여 절대값으로 만들어준다. 그리고 for문을 돌 때 범위를 잘 정하도록 한다. 앞 뒤 인덱스의 차를 냈을 때 0보다 커야하고 마지막 수보다 작아야 한다.

'😈 알고리즘 > 🍃 인프런 #1' 카테고리의 다른 글

🙏 27, 28, 29번 문제  (0) 2023.02.20
🙏 25, 26번 문제  (0) 2023.02.19
🙏 21, 22번 문제  (0) 2023.02.17
🙏 16, 17, 18, 19, 20번 문제  (0) 2023.02.16
🙏 11, 12번 문제  (0) 2023.02.15
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
링크
Total
Today
Yesterday