code 로직 123 ~ 987 328 hubo = [1000개] false 가능한 모든 수의 check배열을 만듭니다. true이면 숫자야구에서 정답인 수입니다. 123 - 1스트라이크 , 1볼 true , 아니면 false 356 - 1스트라이크 , 0볼 true , 아니면 false 327 - 2스트라이크 , 0볼 true , 아니면 fal...
로직 미리 소수를 구해놓고요. 에라토스테네스의 체로 구했습니다. 2~ n까지의 구간중 소수를 구할때 가장 빠른 알고리즘입니다. 모든 순열을 구하고, 배열에 순서대로 저장해요. image.png 출처 : Write a program to print all permutations of a given string - geeksforgeeks 모든 순열을 ...
문제이해 제한 사항에 보면 nums 길이가 10000 이하의 자연수에요. 짝수이고요. 조합으로 뽑으려고 하면 2^10000은 >>>> 1억 ( 1초에 1억번 이하 연산한다면 시간복잡도가 나쁘지 않다고 가정한답니다. ) 조합을 구현할 생각부터 하면 안됩니다. 왜 안되냐면 다음과 같은 조합을 사용한다면 maximum call stack 이란 에러메시지를 보게...
문제이해 문자열 배열 participant 와 completion이 입력으로 들어옵니다. 각각 마라톤 참가한 사람들의 명단, 마라톤을 완주한 사람들의 명단입니다. 완주하지 못한 사람을 리턴하는 문제입니다. 로직 참가한 사람들의 명단을 순차 탐색합니다. 최대 10만이기 때문에 문제없습니다. 참가한 사람들을 map에 key:value에 이름:1대응되게 ...
문제이해 스킬트리의 문제는 스킬이 "CBD"로 주어지면 C -> B -> D 순으로 스킬을 배워야 한대요. 로직 제가 생각한 풀이는 스킬들을 queue에 넣고 skill_trees들을 순차탐색하면서 스킬이 존재하고, 큐의 front에 있는 스킬인지 확인을 합니다. front에 없다면 실패로 바로 탐색을 중지합니다. 그리고 실패했을때는 가능한 스킬트리의 수...
문제이해 당신은 최대한 다양한 종류의 폰켓몬을 가지길 원하기 때문에, 최대한 많은 종류의 폰켓몬을 포함해서 N/2마리를 선택하려 합니다. N마리 폰켓몬의 종류 번호가 담긴 배열 nums가 매개변수로 주어질 때, N/2마리의 폰켓몬을 선택하는 방법 중, 가장 많은 종류의 폰켓몬을 선택하는 방법을 찾아, 그때의 폰켓몬 종류 번호의 개수를 return 하도록 ...
문제이해 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 그리고 저는 모든 숫자에 + , - 부호를 붙여서 누적할 것입니다. 그 누적 값이 타겟 넘버와 같으면 answer를 1씩 증가해줄 겁니다. 로직 최대 20개의 숫자를 늘어놓고, 각 숫자를 뽑아서 + 부호를 붙여서 누적할지, -부호를 붙여서 누적할지 이 두가지 경우가 존재합니다. 즉 2^20가지...
문제이해 간단한 DFS/BFS 문제입니다. DFS,BFS의 목적은 모든 노드를 한 번씩 방문하는 것입니다. 방문을 한 번씩 하려면 방문 했는지 기록해놔야합니다. 방문 했음을 기록할 check 배열을 노드의 개수만큼 만듭니다. 로직 i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computeri를 1로 표현해놨음. 일단 모든 컴퓨터에서 DFS로 노...