19일차 - 문자열, 리스트 (배열)
1번) 세 개의 구분자
for문에 11번째에는 string myStr[i] 값에서 'a', 'b', 'c' 중 하나 찾으면 temp 값을 백터 answer에 삽입을 합니다. 만일 temp 값이 비어있으면 answer에 삽입을 안 하도록 해줘야 합니다. 31번 줄은 마지막 문장이 안 비어 있는 경우 백터 answer에 삽입하는 것입니다. 34번줄은 만일 answer이 비어 있는 경우 "EMPTY" 값을 삽입해줘서 완성시킵니다.
2번) 배열의 원소만큼 추가하기
이번 문제는 간단하게 이중 for문을 이해하면 쉽게 풀 수 있는 문제입니다. arr[i]에서 조건값을 받아서 그만큼 for문에서 백터 answer에 arr[i] 값을 삽입해주면 됩니다.
3번) 빈 배열에 추가, 삭제하기
이번 문제는 백터 flag 값을 기준으로 백터 answer에 값을 삽입하는지 추출을 합니다. 만일 true인 경우, 백터 arr[j]값을 arr[j]의 값의 2배를 answer에 삽입을 합니다. 반대로 false인 경우에는 answer을 arr[j] 값 만큼 추출을 해주면 됩니다.
4번) 배열 만들기 6
이번 문제는 백터 answer에 백터 arr 값을 삽입을 하는 문제입니다. 여기서 조건은 맨 뒤에 있는 answer 값이 arr[i]의 값과 같으면 추출하고, 아니면 arr[i] 값을 삽입하는 것입니다. 여기서 중요한 것은 31번줄에 있는 if문처럼 answer 값이 비어있는 경우 -1을 삽입을 해줘야 하는 것입니다.
5번) 무작위로 K개의 수 뽑기
이번 문제는 좀 무식하게 풀었습니다. 13번째 줄에 있는 for문는 만일 모든 container 값이 arr의 값과 비교해서 없으면 container에 그 arr 값을 삽입합니다. 만일 같은 것이 있으면 container에 삽입을 안 하고 계속 13번째 줄에 있는 for문을 다시 루프합니다. 33번째 for문은 만일 answer 크기가 container보다 큰 경우 -1 값을 삽입하게 합니다. 반대로 answer 크기가 container보다 작은 경우 그 container의 값을 answer에 삽입을 합니다.
'알고리즘 공부 > 프로그래머스 알고리즘' 카테고리의 다른 글
코딩 기초 트레이닝 - 21일차 (C++) (1) | 2024.01.11 |
---|---|
코딩 기초 트레이닝 - 20일차 (C++) (0) | 2024.01.10 |
코딩 기초 트레이닝 - 18일차 (C++) (1) | 2024.01.08 |
코딩 기초 트레이닝 - 17일차 (C++) (2) | 2024.01.05 |
코딩 기초 트레이닝 - 16일차 (C++) (1) | 2024.01.04 |