목록분류 전체보기 (295)
거의 알고리즘 일기장
BMP : 압축하지 않고 저장 JPG : 손실압축 -> 픽셀값이 바뀜 -> 값의 손실로 결과값이 바뀔수 있기 때문에 영상처리에 잘 안씀!! GIF : 256색상 이하의 영상 저장 -> 영상처리에서 안씀 PNG : BMP, JPG의 중간, 알파값(투명도) 지원 import sys import cv2 print("hello opencv", cv2.__version__) #image 읽기cv2.IMREAD_GRAYSCALE, cv2.IMREAD_COLOR, cv2.IMREAD_UNCHANGED img = cv2.imread('cat.bmp', cv2.IMREAD_UNCHANGED) #방어코드 if img is None: print("Image is failed!") #종료 sys.exit() #image 저장..
programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr 풀이방법 1. 열쇠 4방향으로 회전한 값 저장 2. 확장된 배열을 만들어서 자물쇠와 키가 맞는지 확인! 3. n, m의 최대값이 작아서 충분히 하나하나 비교해서 풀어도 가능! (회전방향(4) x (m-1+n)^2 x n^2)정도의 연산이라 충분!! 코드 #include #include #include using namespace std; vector originBoard; vector allRotationKey; int m,..
programmers.co.kr/learn/courses/30/lessons/60058 코딩테스트 연습 - 괄호 변환 카카오에 신입 개발자로 입사한 콘은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴� programmers.co.kr 풀이방법 이 문제는 솔루션이 다 주어진다. 진짜로 주어진 조건에 맞춰서 그대로 진짜 그대로~ 하면 된다. 코드 #include #include #include #include #include using namespace std; //check함수 bool CheckStr(string str) { stack dish; for (char ch : str) { //dish가 비어있..
programmers.co.kr/learn/courses/30/lessons/60057# 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자 programmers.co.kr 풀이방법 1. 문자를 나누는 숫자 1 ~ 주어진문자열의 길이/2 for문 2. 비교 3. 줄어드는 숫자 = (원래길이) - (나중에 나오는 길이) 코드 #include #include #include #include using namespace std; int solution(string s) { int answer = 0; //1. 단위 for(int divNum =..
programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 �� programmers.co.kr 쉽지만 귀찮은 문제 1. 수험생 1, 2, 3의 루틴을 주어진 answers의 사이즈에 맞춰서 반복시켜 답안을 만들어준다. 2. 답안을 확인한다. 3. 제일 잘 맞춘 아이를 answer에 넣는다. 4. 정렬한다. 코드 #include #include #include using namespace std; vector solution(vector answers) { vect..
programmers.co.kr/learn/courses/30/lessons/42748 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 간단하므로 풀이방법 생략하겠음. 코드 #include #include #include using namespace std; vector solution(vector array, vector commands) { vector answer; for (auto ele : commands) { int _i = ele[0] - 1; int _j = ele[1] - 1; int _k = ele[2]; vector temp; for (int i = _i;..
programmers.co.kr/learn/courses/30/lessons/42628 코딩테스트 연습 - 이중우선순위큐 programmers.co.kr 풀이방법 문제는 최대힙으로 풀라고 권장하지만 multiset으로 푸는편이 더 깔끔하고 쉬워서 그렇게 풀었다. 참고로 multiset은 자동 정렬이 된다. 코드 #include #include #include #include #include using namespace std; vector solution(vector operations) { vector answer; multiset container; for (auto ele : operations) { if (ele[0] == 'I') { string strNum = ele.substr(2, ele...
programmers.co.kr/learn/courses/30/lessons/42627 코딩테스트 연습 - 디스크 컨트롤러 하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를�� programmers.co.kr 풀이방법 프로그래머스의 heap관련 문제다. 작업 시간이 큰게 우선순위로 작업해야 한다는 것만 알면 어렵지는 않은 문제였다. 로직은 다음과 같다 1. 현재 시각보다 작거나 같은 시작시간을 가진 값들을 priority que에다 넣는다. 2. priority que가 비어있지 않을때는 priority que의 값을 뱉는다. 3. priority que가 비어있다면 현재..
3,4,6 o 2,5 x 5번은 갑자기 풀이방법이 떠올라서 열심히 풀었으나 시간보니 테스트 시간이 끝나있었다..ㅋㅋㅋ 재밌누 난이도는 평이하다고 느꼈으나 요즘 알고리즘 풀이를 자주 안하다보니 문제를 봤을때 풀이방법이 바로 떠오르지않아 애먹었다. 감각이 생각보다 더 떨어져 있었나보다..ㅠ 이 게시글이 조회수가 제일 많은데 너무 내용이 없어서 문제에 대해서 기억을 되살려 몇개 생각나는걸 적어볼까한다 ㅎㅎ 1, 6은 뭐 선택문제였던걸로 기억하는데 1은 글을 쓰는거였나?? 그랬고 6은 sql문제로 기억한다. 2, 5는 기본적인 dp문제로 기억한다. 나머지는 잘 모르겠다. 난이도는 그렇게 어렵다고 느끼진 않았지만 이때 당시에 알고리즘 문제풀이를 그만둔지 좀 되어서 잘 풀지는 못했다.ㅠ
https://www.acmicpc.net/problem/4195 4195번: 친구 네트워크 문제 민혁이는 소셜 네트워크 사이트에서 친구를 만드는 것을 좋아하는 친구이다. 우표를 모으는 취미가 있듯이, 민혁이는 소셜 네트워크 사이트에서 친구를 모으는 것이 취미이다. 어떤 사이 www.acmicpc.net 풀이방법 유니온 파인드에 size만 추가로 쓰면 되는데, 입력방식이 string이라 string을 키로 받고 value가 int인 map을 하나 선언해서 쓰면된다. c++에서 cin, cout을 쓰는 경우 cin.tie(NULL), ios::sync_with_stdio(false)를 꼭 쓰기바람. 코드 #include #include #include #include using namespace std; ..