목록분류 전체보기 (370)
GitHubSeob

문제 https://school.programmers.co.kr/learn/courses/30/lessons/133502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 ingredient를 탐색하면서 [idx] = 1, [idx+1] = 2, [idx+2] = 3, [idx+3] = 1이면 answer에 1을 더하고, idx-4의 값이 -1보다 작을 수 있으므로 둘 중 큰 값을 idx에 저장한다. for문에서 탐색할 때마다 ++idx 했으므로, 왼쪽으로 네 칸을 옮겨서 다음 탐색에서 세 칸이 왼쪽으로 가게끔 했다. 코드 #include #incl..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 만약 성격 유형이 A, B가 있다면 1번은 A형 3점, 2번은 A형 2점, 3번은 A형 1점이므로, 선택한 번호가 3 이하이면 4에서 선택한 번호를 뺀다. 4번은 점수를 얻지 않으므로 넘긴다. 5번은 B형 1점, 6번은 B형 2점, 7번은 B형 3점이므로, 선택한 번호가 5이상이면 선택한 번호에서 4를 뺀다. 빼고 남은 값을 해당 유형의 map에 저장한다. 그렇게 되면 map는 {..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/161990 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 드래그는 왼쪽 위에서 오른쪽 아래로 한다. 따라서 시작점 y, x는 최솟값을 갖게 되고, 끝점 y, x는 최댓값을 갖게 된다. 주어진 wallpaper을 탐색하면서 #을 발견할 때마다 최솟값과 최댓값을 갱신하면 된다. 코드 #include #include #include using namespace std; vector solution(vector wallpaper) { vecto..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 map을 이용해 약관의 종류인 알파벳을 넣으면 유효기간인 달이 나오도록 한다. 년, 월, 일을 일 수로 변환해서 서로 비교를 한다. 년은 년*12*28을 하면 일수로, 월은 월*12을 하면 일수로 변환된다. 일을 구할 때 년 일수+ 월 일수+ 일수+ 약관 일수를 모두 더한다. (약관은 달이므로 12를 곱한다) 일수로 변환한 오늘이 더 크다면 유효기간이 지났으므로 answer에 저장..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 이름을 입력하면 등수를 알려주는 map인 name_num을 선언, 등수를 입력하면 이름을 알려주는 map인 num_name을 선언한다. 이름이 불린 선수들이 있는 callings 벡터를 탐색하면서 각각의 정보를 불러와 num, name, prev_name, prev_num에 값들을 저장한다. 그다음 서로 값들을 바꿔준다. 모든 탐색이 끝났으면 answer에 추가해 주고 return..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 가는 길에 장애물이 있으면 왔던 길을 되돌아가고 다음 명령을 탐색한다. park에서 'S'인 현재위치를 answer[0], answer[1]에 y, x값을 저장한다. routes[idx][0]은 방향을, routes[idx][2]는 칸 수를 알려준다. 해당 방향으로 한칸 한 칸 가면서 주어진 맵의 좌표를 벗어나는지, 장애물이 있는지 판단한다. 없으면 기존 y, x값에 해당 방향으로..

문제 https://www.acmicpc.net/problem/20210 20210번: 파일 탐색기 첫 줄에 문자열의 개수 N(2 ≤ N ≤ 10,000)이 주어진다. 그 다음 N줄에 정렬할 문자열이 한 줄에 하나씩 주어진다. 모든 문자열의 길이는 100 이하이며, 알파벳 대소문자와 숫자로만 이루어져 있다. www.acmicpc.net 문제풀이 단순 코딩이라 지저분하게 풀었다. 조건자체는 어려운 게 크게 없어 보이지만 0과 숫자가 2^63를 초과할 수 있단 점에서 고생을 했다. 조건이 많아 return 할 것이 많다 보니까 반례의 문자열 순서에 따라 답이 다르게 나오는 경우도 있었다. 문제를 제출한 사람이 거의 없어서 반례를 찾는데도 고생했다. 숫자와 알파벳이 오면 숫자가 더 앞에 온다. 같은 알파벳인 ..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/147355 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 먼저 string s에 p의 크기만큼 t[idx]를 입력받고 num 벡터에 저장한다. idx를 1로 두고 idx + p.size() -1 가 t크기 보다 작을 때까지 탐색한다. (idx + p.size() -1 은 s의 끝자리 위치를 의미한다) s의 첫 글자를 지우고, 새 글자를 하나 더하고 num 벡터에 저장한다. 탐색이 끝났으면 num 벡터를 탐색하면서 p이하인 수가 있을 때마..

문제 https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제풀이 현재 위치, 고른 개수, 번호의 합을 인자로 받는 DFS함수를 만들어서 풀었다. 3개를 골랐으면 세 명의 번호 합이 0인지 판별하고 맞으면 답을 출력하는 변수에 1을 더한다. 현재 위치가 끝나지 않았으면 DFS(x+1, cnt, sum)을 해서 현재 학생을 포함 안 하는 경우를, DFS(x+1, cnt+1, sum+num[x])을 해서 현재 학생을 포함하는 경우를 탐색한다. 코드 ..