スキルツリー


https://programmers.co.kr/learn/courses/30/lessons/49993
#include <string>
#include <vector>
#include <map>
using namespace std;

int solution(string skill, vector<string> skill_trees) {
	int answer = 0;

	for (int i = 0; i < skill_trees.size(); i++)
	{
		string schk = "";
		for (int j = 0; j < skill_trees[i].size(); j++)
		{
			for (int k = 0; k < skill.size(); k++)
			{
				if (skill_trees[i][j] == skill[k])
				{
					schk += skill[k];
					break;
				}
			}
		}

		int flag(0);
		for (int j = 0; j < schk.size(); j++)
		{
			if (skill[j] != schk[j])
			{
				flag = 1;
				break;
			}
		}

		if (flag == 0)	answer++;
	}

	return answer;
}
私はこの問題を解く時にschkを手に入れました.
これはskill[i]と比較して
前には必ずありますが、
後ろに何もなくてもいい性格を利用しています.