\[문제는 단순히 단어를 몇 개 선택하여 문장을 만들었을 때, 이 문장 안에 a~z까지 모든 알파벳을 포함하고 있는지 확인하고 이런 문장이 몇 개 있는지를 출력하는 문제이다현재까지 나온 알파벳의 개수를 저장하는 배열 int\[26] checked 을 만들고, 한 단어
\[은진이가 마지막으로 남은 마피아일 때 종료 조건은 1. 참가자가 1명이 남고 그 사람이 시민일 경우, 2. 참가자가 1명이 남고 그 사람이 은진이일 경우 이다게임이 종료될 수 있을 때까지 모든 경우의 수를 따져보아야하는 Brute Force 문제각 사람들의 유죄지수
\[최소 비용으로 모든 다리를 연결한다는 점에서 kruskal algorithm 을 떠올린다 각 섬에 번호를 매기고 vec 이라는 이름의 vector를 만들어 {dist, 섬1, 섬2} 를 저장한다. 이는 섬1과 섬2간 거리는 dist라는 뜻이다vec에 저장된 값을 참
\[참고1 참고2Solution 1움직일 수 있는 모든 경우의 수를 selectDir\[] 배열에 넣고 크기가 5가 되었을 때 각 순서대로 이동해서 최댓값을 찾아본다. 크기가 5가 되는 모든 쌍을 dfs를 통해 구한다. 변수 지정 (상하좌우의 방향은 차례대로 0,1,2
정규 표현식은 문자열에서 패턴을 찾는데 사용주어진 문자열이 주어진 규칙에 맞는지 확인할 때주어진 문자열에서 원하는 패턴의 문자열을 검색할 때주어진 문자열에서 원하는 패턴의 문자열로 치환할 때주어진 엔진 소리 (100~1~|01)~은 정규식 (100+1+|01)+로 나타
\[합이 s가 되는 부분 수열 합의 개수를 구하는 문제는 dfs를 이용하여 간단하게 풀 수 있다.예를 들어 {-7, -3, -2, 5, 8}의 수열이 주어졌을 때, 처음 합 sum=0에서 ⓐ-7을 더하는 것과 ⓑ더하지 않는 부분으로 나누고 ⓐ-7을 더한 곳에서 ⓒ-3을
#6603 로또 > 1. 생성 먼저 49가지 수 중 k개의 수를 골라 담을 벡터 를 만들고 k개중 6개를 뽑아서 넣을 를 만듦 > 2. dfs 함수를 반복하는데 인자를 둔다. 는 의 index, 는 의 index다. 즉 는 이때까지 뽑힌 로또의 개수
1. yellow 카펫의 가로를 y, 세로를 x 라고 두었을 때, brown 카펫의 가로는 y+2, 세로는 x+2 이다. brown 카펫의 개수는 (y+2)(x+2) - (yx) 이다. >2. yellow 카펫의 가로, 세로의 쌍을 구해주면 된다 y*x=yellow
소수를 구하는 부분은 쉽게 구현할 수 있었는데 모든 순열을 구하고 중복된 값을 제외한는 과정을 구하지 못해서 다른 사람의 코드를 참고 했다.처음에는 for문을 i=2 to i=n-1 까지 돌리는 코드를 작성 하였는데 에라토스테네스의 체 라는 방법을 배웠다.<위키백
현재 100번 채널에 있다. 이동하려고 하는 채널 N이 5457이고 6,7,8 번 버튼이 고장났을 경우에는 5455번으로 이동하고 + +. 총 6번의 버튼을 누르면 된다.즉, 크든 작든 제일 가까운 숫자로 가서 +,- 로 이동해야한다.처음에는 수학적으로 접근해서 일의
브루트 포스 문제를 많이 안 풀어봐서 그런지.. 코드짜기가 귀찮은 건지.. 아직 어렵다.. 근데 그냥 모든 경우의 수를 계산해보면 된다. 이거는 다른 사람의 코드를 참고했다.1행, 2행... 부터 시작해서 같은 행에서 인접한 두 칸을 교환한다.교환했을 때 check()
이 문제는 9명의 난쟁이 중 합이 100이 되는 7명의 난쟁이를 찾아 오름차순으로 출력하는 문제이다.9명 전체 난쟁이의 합에서 두 명을 골라 뺐을 때 합이 100이 되는 경우를 찾으면 된다. 처음 sum - (dwarfi + dwarfj)==100일 때 dwarfi