분류 전체보기
-
프로그래머스 타겟 넘버 c++프로그래머스(Programmers) 2020. 7. 10. 21:49
문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타깃 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1 이상 50 이하인 자연수입니다. 타겟 넘버는 1 이상 1000 이하인 자연수입니다. 입출력 예 [1, 1, 1, 1, 1] 3 5 => DFS 혹은 BFS를 통해 답을 찾을 수 있는지를 묻는 문제입니다. => 전역변수 ..
-
혜화 삼계탕 맛집 [마당너른집]식사🍊🥑🍠🥯 2020. 7. 10. 17:32
2018년에 친구가 몸보신하자며 갔던 삼계탕집이 있습니다. 2년이 지나 다시 한번 몸보신이 필요한듯하여 재방문하였습니다. => 지도를 검색해 찾아가 보면, 저렇게 간판이 있습니다. => 알고보니 더 가서 왼쪽으로 들어가도 되더군요. => 한옥느낌의 정문이 보입니다. => 먹으러 갑니다. => 메뉴표는 다음과 같습니다. => 저는 이전에도 지금도 마당 삼계탕을 먹었습니다. => 옆 테이블을 보니 들깨 삼계탕에 녹두전까지 드시는 분들이 많았습니다. => 밑반찬은 김치, 깍두기, 고추, 양파절임입니다. => 양파절임이 맛있습니다. => 깍두기는 살짝 아쉬웠습니다. => 뿌옇습니다. => 탱글탱글한 삼계탕이 보입니다. => 굉장히 쫄깃했으며, 안에 밥도 들어있습니다. => 소금에 찍어먹는데 굉장히 간도 잘 맞고..
-
프로그래머스 소수 찾기 c++프로그래머스(Programmers) 2020. 7. 10. 17:09
문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. 013은 0, 1, 3 숫자가 적힌 종이 조각이 흩어져있다는 의미입니다. 입출력 예 17 3 011 2 입출력 설명 예제 #1 [1, 7]으로는 소수 [7, 17, 71]를 만들 수 있습니다. 예제 #2 [0, 1, 1]으로는 소수 [11, 101]를 만들 수 있습니다. 11과 01..
-
프로그래머스 모의고사 c++프로그래머스(Programmers) 2020. 7. 10. 15:32
문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5,... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5,... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5,... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를 작성해주..
-
백준 1924 - 2007년백준 algorithm 2020. 7. 10. 14:12
=> 구현 문제입니다. => 해당 문제의 경우 1년의 case만 생각하면 되기 때문에 brute Force(브루트 포스)로 문제를 풀어도 전혀 무방합니다. week [7] : 일주일을 저장하는 배열 index : 위의 배열을 따라다니며 요일을 확인하는 변수 X와 Y의 값을 입력받습니다. switch case문을 이용해 한 달이 31일인 경우, 30일인 경우 28일인 경우를 나눕니다. 제가 구하는 달의 일까지만 index를 지속적으로 추가해줍니다. index는 7을 벗어나지 않으므로, %7을 해주어 숫자가 커지는 것을 방지해줍니다. weel [index]의 값을 출력합니다. => 위와 같은 logic을 따라 입력받은 X월 Y일의 요일을 알아낼 수 있습니다. => 다른 사람의 경우 X 이전의 달들을 inde..
-
백준 10989 - 수 정렬하기 3백준 algorithm 2020. 7. 9. 12:49
=> 구현 카테고리에 있지만, 구현 문제가 아닌 것 같습니다. => vector에 넣어 sort 함수를 사용할 경우 시간제한과 메모리 제한에 걸리게 됩니다. => 해당 문제를 해결하기 위해서는 기존의 문제들과는 다른 시선이 필요합니다. arr [10001]arr [10001] : 주어지는 수는 10000 아래의 수입니다. 그러므로 해당 숫자가 몇 개가 들어가는지 확인하는 배열을 선언합니다. max : 출력할 때, 쓸데 없는 부분까지 탐색하는 문제를 해결하기 위해 max 변수를 선언하여 사용합니다. arr 배열에는 실제 수가 아닌 해당 index 수가 몇 번 나왔는지를 세어줍니다. 0부터 max까지의 수중 1개 이상의 갯수를 가진 index를 차례대로 출력해줍니다. => 위와 같은 방법으로 논리를 구성하여..
-
백준 1707 - 이분 그래프백준 algorithm 2020. 7. 9. 12:29
=>그래프 문제입니다. *** 논리는 나중에 정리하도록 하겠습니다. #include #include #include #include #include using namespace std; vector a[20001]; int color[20001]; bool dfs(int node, int c) { color[node] = c; for(int i=0; i> t; while(t>0) { int n,m; cin >> n>> m; for(int i=1; i u >>v; a[u].push_back(v); a[v].push_back(u); } bool ok = true; for(int i=1; i