전체 글
-
2023 KAKAO TECH BLIND RECRUITMENT 1차 후기후기/활동 후기 2022. 9. 24. 20:10
9월 24일 오후 2시 ~ 7시까지 5시간동안 1차 코딩테스트를 봤습니다. 문제는 총 7문제였고, 6문제를 해결하였습니다. 1번. 구현 모든 달이 28일로 되어 있어서 [31일, 28일, 31일, ...] 이런 노가다 없이 년-월-일을 전부 일로 변환하여 풀었습니다. 2번. 그리디 생각해보면 한 번 왔다갔다할 때마다 최대로 배송하고, 최대로 수거할 수 있음이 보장되어 있습니다. 그래서 한 번 왔다갔다할 때 max(가장 멀리 배송해야 하는 곳, 가장 멀리 수거하는 곳)만큼 더해주는 일을 반복하면 됩니다. 3번. 브루트포스, 백트래킹 이모티콘 할인율이 0%, 10%, 20%, 30%, 40%이므로 하나의 이모티콘에 5가지의 경우의 수를 적용할 수 있습니다. 그래서 이모티콘의 개수를 k개라고 하면 5^k가지의..
-
제2회 한국항공대학교 프로그래밍 경진대회(KAUPC) 개최 후기후기/활동 후기 2022. 9. 19. 08:08
참조: 제1회 한국항공대학교 프로그래밍 경진대회 개최글https://suhwanc.tistory.com/186 2021 Kaupc 한국항공대학교 프로그래밍 경진대회 개최 후기올해 11월 6일 열렸던 한국항공대학교 프로그래밍 경진대회를 개최한 후기를 남겨두려 한다. 자세한 진행과정은 시간이 날 때 꼭 다음 대회 개최자, 또는 대학에서 처음 프로그래밍 대회를 열어suhwanc.tistory.com문제 확인하기https://www.acmicpc.net/category/detail/3184 제2회 한국항공대학교 프로그래밍 경진대회(KAUPC) www.acmicpc.net 9월 17일 제2회 한국항공대학교 프로그래밍 경진대회(KAUPC)를 개최하였습니다.2021 KAUPC 글에서 3번 내용부터 적어보겠습니다.1...
-
[FE] 부트스트랩 없이 왼쪽으로 펼쳐지는 드롭다운 메뉴 만들기공부/etc 2022. 9. 12. 12:00
사용한 것: html, css, javascript, jquery OSS 활동을 하면서 Export 버튼 확장 기능을 맡았다. 기능 자체는 매우 간단한 기능이였지만, 여기에 삽질한 시간은 상상을 초월했다. 1. HTML 내용을 설명하자면 지금까지 Export라고 적힌 버튼을 클릭하면 기본적인 엑셀 레포트 파일을 다운 받는 것인데, 변경할 사항은 Export 버튼을 누르면 위 영상처럼 드롭다운 기능을 사용해 excel, rdf, yaml, json 같은 확장자를 선택할 수 있는 선택지가 펼쳐지고, 거기서 선택한 확장자를 클릭해 파일을 다운 받는 것이다. 처음에는 현재 기여할 웹페이지에 관련 기능이 있을 줄 알고, 코드를 재사용하려고 페이지를 샅샅히 살펴봤었다. 하지만 드롭다운 기능을 사용하는 것이 없었고 ..
-
[BOJ 9250, C++] 문자열 판별 집합알고리즘/BOJ 2022. 9. 4. 22:42
https://www.acmicpc.net/problem/9250 9250번: 문자열 집합 판별 집합 S는 크기가 N이고, 원소가 문자열인 집합이다. Q개의 문자열이 주어졌을 때, 각 문자열의 부분 문자열이 집합 S에 있는지 판별하는 프로그램을 작성하시오. 문자열의 여러 부분 문자열 중 하 www.acmicpc.net suffix array가 남았긴한데, 대표적인 문자열 알고리즘인 KMP, Trie, Aho-Corasick을 모두 배웠다. 아호코라식은 Trie 와 KMP를 섞은 일대다 패턴매칭 알고리즘이라고 한다. 결국엔 이것도 Trie를 사용하기 때문에 눈에 익으면 입력값 제한을 확인하여 유형을 찾을만한 알고리즘이라고 생각된다. 1. 문제 풀이 시간복잡도를 계산해보면 각 문자열마다 최대 10,000이고..
-
[BOJ 5670, C++] 휴대폰 자판알고리즘/BOJ 2022. 8. 25. 17:47
https://www.acmicpc.net/problem/5670 5670번: 휴대폰 자판 휴대폰에서 길이가 P인 영단어를 입력하려면 버튼을 P번 눌러야 한다. 그러나 시스템프로그래밍 연구실에 근무하는 승혁연구원은 사전을 사용해 이 입력을 더 빨리 할 수 있는 자판 모듈을 개발 www.acmicpc.net 트라이 자료구조를 공부했는데, 다른 블로그에 나와있는 문자열 트리 그림을 확인해보면 코드 이해가 KMP보다 쉽습니다. 근데 소멸자 쓰는 건 자료구조 수업 이후에 처음이라 정신 나갈 뻔했네요. 1. 문제 풀이 문자열을 탐색한다는 내용과 문자열이 겹치면 자동으로 완성한다라는 내용을 통해 트라이 자료구조를 사용해야 한다는 것을 알 수 있습니다. 그리고 트라이 문제를 캐치할 수 있는 제일 큰 핵심은 똑같은 문..
-
[MySQL] RSA public key is not available client side (option serverRsaPublicKeyFile not set)공부/etc 2022. 8. 23. 23:23
OSS 활동중 프로젝트를 pull할 때마다 mysql 연결 정보가 기본값으로 바뀌면서 해당 에러가 나와 실행이 되지 않습니다. 그래서 맨날 구글링해서 복붙을 하는데, 오늘은 갑자기 제가 복붙하는 내용이 궁금해져서 포스팅을 하고자 합니다. 결과적으로는 ?allowPublicKeyRetrieval=true&useSSL=false 내용을 복붙해서 붙이면 됩니다. spring.datasource.url=127.0.0.1:3306/[database_name]?allowPublicKeyRetrieval=true&useSSL=false 클라이언트와 디비가 통신을 할 때 서로 주고 받는 데이터를 암호화해서 보내게 됩니다. MySQL 8.0부터는 보안이 강화되어 생기게 되는 오류 입니다. 1. allowPublicKey..
-
[BOJ 4354, C++] 문자열 제곱알고리즘/BOJ 2022. 8. 15. 21:30
https://www.acmicpc.net/problem/4354 4354번: 문자열 제곱 알파벳 소문자로 이루어진 두 문자열 a와 b가 주어졌을 때, a*b는 두 문자열을 이어붙이는 것을 뜻한다. 예를 들어, a="abc", b="def"일 때, a*b="abcdef"이다. 이러한 이어 붙이는 것을 곱셈으로 생각한다 www.acmicpc.net 이런 상황일 때 실패함수를 사용하는 것이다를 잘 보여준 문제 1. 풀이 문제를 잘 읽어보면 S = A^n으로 어떤 문자열 S는 어떤 문자열 A를 n개를 이어 붙인 것이므로 aaaaaab, abaaaaa, aabbaaaa 같은 이런 문자열들은 저 문자열 그대로 A가 되어 S = A^1이 되는 것을 알 수 있습니다. 만약 S가 A의 알파벳을 순서대로 계속 붙인 경우..
-
[BOJ 8394, C++] 악수알고리즘/BOJ 2022. 8. 9. 12:34
https://www.acmicpc.net/problem/8394 8394번: 악수 첫째 줄에 회의에 참석한 사람의 수 n (1 ≤ n ≤ 10,000,000)이 주어진다. www.acmicpc.net 1. 문제 증명 예시가 4만 나와있는데, n = 1 ~ 3일 때도 확인해보면 피보나치 수열의 점화식이 나옵니다. arr[i] = arr[i-1] + arr[i-2] 피보나치 수열 점화식을 증명하는 방법은 생각보다 간단합니다. 회의에 참석한 사람 N명이 있고, 이미 우리가 1명부터 N-1명일 때까지의 경우의 수를 모두 구했다고 가정해보겠습니다. 이때 N-1명일 때의 경우의 수는 dp[N-1]입니다. N번째 사람이 추가되면 경우의 수가 2가지로 나뉘게 됩니다. 1) N번째 사람이 악수를 하지 않는 경우 이 경..