일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- REDIS
- HTTP
- 레벨2
- Level2
- 스프링 부트
- 코드리뷰
- Docker
- AOP
- JPA
- 우테코
- 프리코스
- JUnit5
- mock
- 백준
- 세션
- MSA
- 스프링부트
- 미션
- 서블릿
- CircuitBreaker
- 우아한세미나
- 프로그래머스
- 우아한테크코스
- Spring Batch
- 트랜잭션
- AWS
- 의존성
- yml
- 자바
- Paging
Archives
- Today
- Total
늘
Level.2_스킬트리 본문
728x90
요즘 Level.2 문제도 거뜬히 해결되는것 같아서 기분이 좋다 ㅎㅎ
내가 생각한 알고리즘은 순서대로 검사하되 만약 검사하는 문자가 안나온다면 skill을 돌면서 skill내의 문자가 이미 나왔는지 확인하는 방식이었다.
정말 오랜만에 1코1통을 했다...!(한번에 코딩하고 한방에 통과!)
#include <string>
#include <vector>
using namespace std;
int solution(string skill, vector<string> skill_trees) {
int answer = 0;
vector<string> v;
for(int i=0; i<skill_trees.size(); ++i){
string tmp = skill_trees[i];
int index=0;
int out=0;
for(int j=0; j<tmp.size(); ++j){
if(skill[index] == tmp[j]){
index++;
continue;
}
else{
for(int k=0;k<skill.size(); ++k){
if(skill[k] == tmp[j]){
out = 1;
break;
}
}
}
if(out == 1){
break;
}
}
if(!out)
answer++;
}
return answer;
}
코딩테스트 연습 - 스킬트리
programmers.co.kr
728x90
Comments