전체 글
-
최빈값 구하기 (c++)코딩테스트/프로그래머스 2024. 2. 8. 22:44
1. 문제 코딩테스트 연습 - 최빈값 구하기 | Programmers School 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 1. 각 원소의 개수 저장하는 v, 각 원소 개수의 수를 저장하는 cnt vector 초기화 array v cnt [1, 2, 3, 3, 3, 4] [0, 1, 1, 3, 1, 0, ..., 0] [0, 3, 0, 1, 0, ..., 0] 2. maxi = v의 최댓값 maxi가 2 이상 ≫ return -1 maxi가 1 ≫ return answer 3. 생각 v, cnt, maxi의 값이 계속 헷갈려서 많이 헤맸다..
-
(02566) 최댓값 (c++)코딩테스트/백준 2024. 2. 8. 22:06
1. 문제 2566번: 최댓값 (acmicpc.net) 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net 2. 풀이 1. 9 * 9 행렬 값 개별 int로 받기 2. 검사하면서 maxi랑 비교 maxi보다 클 경우 maxi 변경, col, row에 값 저장 작은 경우 모든 값 그대로 shin0112/BOJ_cpp: BOJ c++ solutions (github.com)
-
문자열 나누기 (c++)코딩테스트/프로그래머스 2024. 1. 31. 00:17
1. 문제 코딩테스트 연습 - 문자열 나누기 | Programmers School 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 1. for문으로 s.size() 만큼 돌리기 2. 첫 글자 char c에 저장하고, 같으면 cnt_s++, 다르면 cnt_d++ 3. cnt_s == cnt_d || i = s.size() - 1 answer++ cnt_s, cnt_d 0으로 초기화 c = s[i + 1] 3. 생각 s[i + 1]으로 하면 범위를 넘어서지 않을까? 위 3번 조건일 경우의 코드에서 s[i + 1]에 접근하는 코드가 있다. 만약에 i가..
-
(25206) 너의 평점은 (c++)코딩테스트/백준 2024. 1. 30. 23:49
1. 문제 25206번: 너의 평점은 (acmicpc.net) 25206번: 너의 평점은 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치 www.acmicpc.net 2. 풀이 1. map으로 학점 매칭 2. m에서 학점 점수 찾고 과목 평점과 곱 3. 곱 다 더해서 학점의 총합으로 나누기 shin0112/BOJ_cpp: BOJ c++ solutions (github.com)
-
(02941) 크로아티아 알파벳 (c++)코딩테스트/백준 2024. 1. 30. 23:26
1. 문제 2941번: 크로아티아 알파벳 (acmicpc.net) 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 2. 풀이 1. 크로아티아 알파벳 경우의 수를 전부 고려 → if문으로 조건 결정 2. 크로아티아 알파벳이면 알파벳 개수를 1개로 보고 총 문자열 개수 확인 shin0112/BOJ_cpp: BOJ c++ solutions (github.com)
-
(01316) 그룹 단어 체커 (c++)코딩테스트/백준 2024. 1. 30. 23:24
1. 문제 1316번: 그룹 단어 체커 (acmicpc.net) 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 2. 풀이 1. 문자 연속이 끝나는 지 확인하는 벡터 check 생성 s[i] == s[i + 1] 인지 확인하고, 다르면 check[s[i] - 'a'] = 1으로 변경 2. check 확인해서 문자가 다른데, 1이면 그룹 단어가 아님 shin0112/BOJ_cpp: BOJ c++ solutions (github.com)
-
최댓값 만들기 (2) (c++)코딩테스트/프로그래머스 2024. 1. 28. 00:14
1. 문제 코딩테스트 연습 - 최댓값 만들기 (2) | Programmers School 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 1. 정렬하기 2. 가장 작은 두 숫자 곱하기(음수), 가장 큰 두 숫자 곱하기(양수) 해서 더 큰 숫자를 max라고 해서 반환 shin0112/programmers_cpp: programmers' coding test solutions (github.com) 출처 : 프로그래머스 코딩 테스트 연습 - 최댓값 만들기 (2) https://school.programmers.co.kr/learn/courses/30..
-
시저 암호 (c++)코딩테스트/프로그래머스 2024. 1. 28. 00:08
1. 문제 코딩테스트 연습 - 시저 암호 | Programmers School 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 1. for문으로 s를 돌면서 n 더함 2. z → a, Z → A 가 되는 것을 고려해서 26로 나눈 나머지를 사용 공백은 예외 처리 shin0112/programmers_cpp: programmers' coding test solutions (github.com) 출처 : 프로그래머스 코딩 테스트 연습 - 시저 암호 https://school.programmers.co.kr/learn/courses/30/lessons..