본문 바로가기

코테

(131)
[코드트리] HashMap 연습문제 Hash Map 사용 예시, 해시맵, code tree, cpp, 자료구조, 문제, 예제 문제 n개의 명령이 주어졌을 때, 각 명령을 수행하는 프로그램을 작성해보세요. 명령의 종류는 크게 3가지 입니다. add k v : (k, v) 쌍을 hashmap에 추가합니다. key가 k, value가 v라는 뜻입니다. 이때 만약 동일한 k가 이미 존재한다면, v로 덮어씁니다. remove k : key가 k인 쌍을 찾아 hashmap에서 제거합니다. 잘못된 입력은 주어지지 않습니다. find k : key가 k인 쌍이 hashmap에 있는지를 판단합니다. 있다면 해당하는 value를 출력하고, 없다면 None을 출력합니다. 입력 형식 첫 번째 줄에는 n이 주어집니다. 두 번째 줄 부터는 n개의 줄에 걸쳐 각 명..
[코드트리] Hash Map SW중심대학 사업단에서 CodeTree와 함께 실시한 코딩테스트 대비 캠프에 참여하여 공부한 내용을 정리하였습니다. * 참고 : python과 c++, java 등 언어별로 설명이 다른 부분이 존재합니다! 필자는 c++을 사용하고 있습니다. unordered_map STL C++에서는 unordered_map이라는 STL을 이용할 수 있습니다. unordered_map은 HashMap 자료구조로 되어있으며, HashMap의 경우 해싱을 기반으로 데이터들을 관리해주는 자료구조 입니다. HashMap은 (key, value) 쌍 형태로 들어가 있어, key와 그에 따른 value 값을 동시에 저장하는 형태입니다. 따라서 HashMap의 삽입, 삭제, 탐색 등 모든 함수의 시간복잡도가 전부 O(1)입니다. u..
[코드트리] 반복문의 시간복잡도(2) SW중심대학 사업단에서 CodeTree와 함께 실시한 코딩테스트 대비 캠프에 참여하여 공부한 내용을 정리하였습니다. 반복문 시간복잡도 문제 중 어려웠던 문제입니다. (1) function solution(n, m) set sum = 0 set visited = [n][m] for i = 1 ... i
[PGS] Lv.0 (코딩테스트 입문) 9일차 문제 개미 군단 int solution(int hp) { int jang = hp / 5; hp -= 5 * jang; int byung = hp / 3; hp -= 3 * byung; int answer = hp + jang + byung; return answer; } 모스부호 (1) char MORSE_CODE[26][5] = {".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-","...-",".--","-..-","-.--","--.."}; string solution(string letter) { string word = ""; ..
[PGS] Lv.0 (코딩테스트 입문) 8일차 문제 프로그래머스 C++ 배열 자르기 vector solution(vector numbers, int num1, int num2) { vector answer; for(num1; num199) { answer.push_back(alpha[age / 100]); age -= 100*(age/100); } if(tmp>9) answer.push_back(alpha[age / 10]); answer.push_back(alpha[age % 10]); return answer; } → 새로운 풀이 string answer = to_string(age); for(auto& v : answer) v += 'a'-'0'; return answer; // for(반복될 지역변수 : 배열) -> 지역변수가 배열 길이만큼 반복됨..
[PGS] Lv.0 (코딩테스트 입문) 7일차 문제 프로그래머스 C++ 특정 문자 제거하기 string solution(string my_string, string letter) { string answer = ""; answer = regex_replace(my_string, regex(letter), ""); return answer; } 각도기 int solution(int angle) { if(angle==90) return 2; if(angle == 180) return 4; if(angle>0 && angle
[PGS] Lv.1 : 소수 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/12977 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. 제한사항 nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다. nums의 각 원소는 1 이상..
[PGS] Lv.0 (코딩테스트 입문) 6일차 문제 프로그래머스 문자열 뒤집기 string solution(string my_string) { string answer = ""; int len = my_string.length(); for(int i=1; i> n; for(int i=0; i

728x90