[백준] 2577 숫자의 개수
2023. 1. 6. 19:31
Algorithm Study
문제 설명 https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 세 개의 자연수 a, b, c를 곱하여 나온 결과에 0 ~ 9까지의 숫자가 각각 몇 번씩 쓰였는지 구하기 문제 풀이법 세 개의 자연수는 각각 100 ~ 999의 범위를 가지고 있다 따라서 이 3개의 수를 곱하면 int형의 범위는 넘을 것이므로 충분히 long long형을 선언하여 a * b * c 값을 넣어줌 10씩 나누면서 각 숫자가 몇번 나왔는지 배열에 저장 후 출력 소스 코드 #include using namespace std; int..
[백준] 10808 알파벳 개수
2023. 1. 6. 19:21
Algorithm Study
문제 설명 https://www.acmicpc.net/problem/10808 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net 알파벳 소문자로만 이루어진 단어가 주어짐 각 알파벳이 단어에 몇 개가 포함되어 있는지 구하기 문제 풀이법 한 단어의 글자수 만큼 for문을 돌면서 26개의 크기로 이루어진 배열의 자신의 알파벳 인덱스에 + 1을 함 소스 코드 #include using namespace std; int main() { int arr[26] = { 0 }; string str; getline(cin, str); for (int i = 0; i < str.size(); i++) { arr[str[i] ..
[42 Seoul] minitalk
2023. 1. 5. 23:06
42 Seoul
설명에 들어가기 전 후기 minishell을 하기 전, pipex와 minitalk 둘 중에 하나만 고르면 되는데 나는 minitalk을 골랐다 minishell을 하려면 pipex가 도움이 된다고는 하지만 어차피 둘 다 알아야 하고, 이전에 minitalk을 평가해봤을때 프로세스 간 통신이라는 것이 인상 깊어서 minitalk을 선택했다 minitalk은 보너스를 하지 않으면 정말 쉬웠다 보너스를 하게 된다면 sigaction과 3 way handshake를 해야한다는데, 이론으로 들었던 3 way handshake를 직접 구현하지 못한게 아쉽다 나중에 블랙홀의 여유가 되었을 때 minitalk 만큼은 보너스를 다시 해보고 싶다는 생각이 들었다 minitalk을 하면서 든 생각은 운영체제 공부 좀 열심..
[프로그래머스] 1단계 - 문자열 내 마음대로 정렬하기
2023. 1. 5. 21:35
Algorithm Study
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12915 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 각 문자열의 n번째 글자를 기준으로 오름차순 정렬하는 문제 이때 n번째 글자가 같으면 문자열을 비교하여 오름차순 정렬 문제 풀이법 처음에는 pair을 통해서 n번째 문자와, strings 상의 인덱스를 찾아서 sort해주었다 그렇게 하면 n번째 문자가 같은 경우를 처리하지 못하였다 sort할 때 필요한 cmp에서 n번째 글자를 알 수 있으면 바로 sort를 적용시켰을텐데, 알 수 없으니..
[프로그래머스] 1단계 - [1차] 비밀지도.cpp
2023. 1. 5. 21:09
Algorithm Study
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/17681 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr n개의 2진수를 변환했을때 0이면 공백, 1이면 #으로 암호화 되어있는 지도를 2개 겹쳐서 최종 지도를 획득하는 문제 이때 하나라도 벽이면 벽임 문제 풀이법 처음에 내가 푼 풀이법은 2진수로 변환하고, 그 수를 reverse한 후 임시 배열에 값을 저장한 후, 다른 지도도 검사하는 방식으로 문제를 해결했다 답은 맞았지만 여러 풀이를 참고하던 중 비트 연산자를 사용하는 풀이를 발견했다 비..
[프로그래머스] 1단계 - 예산
2023. 1. 5. 00:08
Algorithm Study
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 예산안에서 최대한 많은 부서들을 지원하는 수를 구하는 문제 문제 풀이법 가장 많은 부서들을 지원하므로 지원 금액을 작은 순서대로 정렬한 후, 지원 금액을 하나씩 제외해 가면서 예산을 구함 맨 뒤의 수. 즉 가장 큰 지원금을 제외하면서 총 예산이 정해진 예산을 넘지 않으면 그 수가 최대이므로 바로 return 소스 코드 #include #include #include #includ..
[프로그래머스] 1단계 - 3진법 뒤집기
2023. 1. 4. 23:43
Algorithm Study
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/68935 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어진 수 n을 3진법으로 변환 후, 뒤집어서 다시 10진수로 변환하는 문제 문제 풀이법 문제는 어렵지 않았다 다만 n = 3인 경우를 간과하여서 틀렸다 n이 3인 경우를 고려하니, 정답! 소스 코드 #include #include #include #include using namespace std; int solution(int n) { int answer = 0; vector v; ..
[백준] 17413 단어 뒤집기 2
2023. 1. 3. 23:22
Algorithm Study
문제 설명 https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 안에 있는 단어는 그대로, 그렇지 않은 단어는 거꾸로 출력하는 문제 문제 풀이법 처음에는 띄어쓰기를 기준으로 단어의 첫 시작점과, 끝 시작점을 지정해서 reverse 시키려고 했다 하지만 너무 구현이 비효율적인 것 같았다 솔직히 스택을 사용하면 된다는 생각은 못하고 있었는데, 스택이라는 힌트를 봐버려서 스택으로 구현하게 되었다 여기서 한 번 틀렸는..
[Snacks 개발 일기] #10 incorrect string value..... 에러 해결하기
2023. 1. 3. 22:41
Project/Snacks
localhost의 테스트 db를 적용하면서 개발을 하고 있었는데 본격적인 배포 준비를 위해서 RDS를 적용하게 되었다 적용하는 과정에서 이전에는 보지 못한 오류들이 나왔는데 오류 내용이 "incorrect string value...." 라는 오류였다 구글링해보니 한글이 안들어가져서 그렇다는데... 이전에 rds를 몇번 생성한 경험이 있어 rds를 생성하면서 파라미터 그룹의 값도 한글이 들어가게끔 utf8mb4로 변경했는데 왜 안되지 싶었다 뭐가 문제인지 몰라서 utf8mb4대신 utf8로도 해보고, 직접 접속하여 값을 바꿔보았지만 바뀌는 것은 없었다 구글링하면서 한 가지 알아내었다 바로 파라미터 그룹을 설정한 뒤 재부팅을 안했다는 것! 재부팅을하니 이번에는 utf8이 아니라 utf8mb3가 설정이 된..
[프로그래머스] 1단계 - 콜라츠 추측
2023. 1. 2. 20:58
Algorithm Study
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/12943 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1-1. 입력된 수가 짝수라면 2로 나눔 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더함 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복 이때 주어진 수가 0이라면 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 -1 반환 문제 풀이법 1단계라 상당히 구현이 상당히 간단하지만 예외사항을 간과하여서 틀렸던 문제 문제에서 구현하라는 그대로 구현 주의해야 할 점 1. ..