민우가 샀던 로또에 동생이 낙서를 하는 바람에 번호 몇 개를 알아보지 못 하게 되었는데... 민우는 로또 당첨번호 발표가 끝나고 난 후 자기가 샀던 로또가 최고 몇 등까지 당첨될 수 있는지 궁금해졌다. 저 같으면 어떻게든 번호를 복구했을 거 같은데 민우는 그냥 포기했나 봅니다. 민우가 산 로또의 최고 순위와 최저 순위를 알아보는 문제 문제의 조건 1. 민우의 로또 번호를 담은 배열 lottos, 당첨 번호를 담은 배열 win_nums가 주어진다. 2. 동생이 낙서해서 알아보지 못 하는 번호는 0으로 표시되어 있다. 3. 0들이 만약 로또 당첨 번호와 일치하면 민우가 얻을 수 있었던 최고 순위이고 일치하지 않으면 민우가 얻을 수 있었던 최저 순위이다. 4. [최고 순위, 최저 순위] 순서로 배열에 담아서 ..
2021.10.10 - [코딩 공부/C 언어] - [C언어 기초] if ~ else와 else if [C언어 기초] if ~ else와 else if 2021.10.05 - [코딩 공부/C 언어] - [C언어 기초] 조건문 if [C언어 기초] 조건문 if 2021.04.16 - [코딩 공부/C 언어] - C 언어 기초 : 연산자 3 - 비트 연산자 C 언어 기초 : 연산자 3 - 비트 연산자 2021.04.14.. hgu-can.tistory.com 2021.10.05 - [코딩 공부/C 언어] - [C언어 기초] 조건문 if [C언어 기초] 조건문 if 2021.04.16 - [코딩 공부/C 언어] - C 언어 기초 : 연산자 3 - 비트 연산자 C 언어 기초 : 연산자 3 - 비트 연산자 2021...
하드디스크의 작업 처리 시간의 평균을 구하는 문제 문제의 조건 1. 작업 처리 시작 시간과 소요 시간이 담긴 2차원 배열 jobs가 주어짐 2. 하드디스크는 기본적으로 먼저 들어온 순서대로 처리를 하는데 만약 현재 처리중인 작업이 끝나지 않았는데 새로운 처리 요청이 2개 이상 들어오면 그 중 작업 소요 시간이 짧은 순서대로 처리한다. => 우선순위 큐에 현재 작업시간보다 짧거나 같은 작업들을 저장하는데 작업의 소요시간이 짧은 순서로 정렬해서 저장해야 함 (여기서 함수 사용법을 몰라서 아주 많이 헤멤...) 3. 모든 작업이 끝나서 쉬는 상태라면 남은 작업들 중 가장 먼저 들어온 것부터 처리한다. 2, 3번 과정을 반복해서 총 작업 소요 시간을 구한 뒤 작업의 갯수로 나눠서 평균 구하면 되는데 총 작업 소..
카카오 프렌즈들이 단체사진을 찍으려 하는데 각자 원하는 조건이 있다. 프렌즈들이 원하는 조건에 맞춰 단체사진을 찍을 수 있는 경우의 수를 구하는 문제 문제의 조건 1. 프렌즈들이 원하는 조건의 갯수 n, n만큼 조건을 담은 string 배열 data가 주어진다. 2. data의 각 원소는 "N~F=0" 과 같이 주어지는데 N(네오)는 F(프로도)와 0칸 떨어져 있고 싶다는 뜻이다. 즉 바로 옆에 붙어있고 싶다는 뜻이므로 둘 사이의 거리는 1이어야 한다는 뜻이 된다. (겹쳐있진 않고 일렬로 서 있으니까) 그렇다면 실제로 계산에 사용해야 할 프렌즈 사이의 거리는 주어지는 수에서 +1 한 값이라는 말이 된다. "N~F>1" 이라면 1칸을 초과해서 떨어져 있고 싶다는 뜻이고 "N~F
오픈채팅방에서 사람들의 출입 로그를 출력하는 문제 문제의 조건 1. 한 오픈채팅방의 출입 로그가 담긴 string 배열 record가 주어지는데 각 원소는 위와 같은 규칙으로 정해져서 담겨있다. 2. 만약 한 사람이 닉네임을 바꾸면 그 전에 출력되었던 메시지들의 닉네임도 모두 바뀐다. 그 사람이 나갔다가 다시 들어오면서 아이디를 바꿔서 들어와도 그 전에 출력되었던 닉네임도 모두 바뀐다. => record 배열을 처음부터 순회하면서 해시 맵에 유저아이디와 닉네임을 저장한다. key: 유저아이디 value: 닉네임 이렇게 저장하고 출입 로그의 첫 단어가 Enter 이거나 Change이면 key 유저아이디로 찾은 value값을 바꿔주면 된다. record 배열이 끝날 때엔 가장 마지막으로 사용한 닉네임으로 갱..
Leo가 길에서 본 카펫이 갈색 격자 테두리가 둘러져 있고 내용물은 노란색 격자로 채워져 있는데 Leo는 노란 격자 갯수와 갈색 격자 갯수만 기억하지만 카펫의 전체 크기는 기억하지 못한다. 이거만 해도 기억력이 많이 좋은거 같지만 Leo는 여기서 멈추지 않는다... Leo가 길에서 본 카펫의 노란색과 갈색 격자의 갯수를 이용해서 카펫의 전체 크기를 구하고 싶어하는 문제 문제의 조건 1. 갈색 격자 갯수 brown, 노란 격자 갯수 yellow가 주어짐 2. 카펫의 테두리는 갈색 격자로 둘러져 있음 즉 카펫의 최소 높이는 3이다. 예시 그림과 같이 노란 격자를 최소 한 칸 포함하면서 갈색 격자로 테두리가 둘러지려면 최소 3칸이 필요하다. -> 이렇게 접근했어야 하는데 처음에는 최대 너비를 구해서 접근하는 ..
주어진 숫자들로 조합할 수 있는 숫자들 중 소수가 몇 개인지 찾는 문제 문제의 조건 1. string으로 변환된 숫자 numbers가 주어짐 2. numbers의 각 숫자들을 조합해서 만들 수 있는 숫자들 중 소수를 찾아서 카운트하기 3. 여기서 조합이 가능한 모든 경우를 탐색한 후 중복되는 숫자는 거르고 소수를 찾아야 함 순열을 찾아주는 함수가 있는줄 모르고 저것을 직접 구현하려다 피 봤는데... next_permutation이라는.. 친절하게 모든 순열을 구해주는 함수가 있으니까 저걸 쓰자. #include #include #include #include using namespace std; bool isPrimeNum(int num) { if (2 > num) return false; //소수를 판..
베스트앨범에 수록할 곡을 찾는 문제 이것 또한 최대 재생 장르를 찾는데까진 생각해냈지만 나머지 수록곡을 찾는 부분 구현을 어찌 해야 할 지 감이 안 와서 구글링이 필요했음... 문제의 조건 1. 노래의 장르를 담은 문자열 배열 genres, genres 배열의 각 원소들의 재생 횟수가 담긴 배열 plays가 주어짐 2. genres의 노래는 고유 번호로 구분되는데 고유번호는 genres 배열의 인덱스 번호임 3. 노래 수록 기준은 다음과 같다. 4. 위 기준대로 노래를 담았을 때 수록되는 인덱스 번호 순서를 리턴하기 5. 필요한 것: 장르별 총 재생횟수 장르별 재생횟수와 인덱스 번호 장르별 총 재생횟수를 구해서 가장 많이 재생된 장르를 찾는다. 찾은 장르로 가장 많이 재생된 고유번호 2개를 찾는다. an..
- Total
- Today
- Yesterday
- 하드웨어
- 기초
- 프로그래머스
- dp
- 깊이우선탐색
- 컴퓨터
- 코딩공부
- 문제풀이
- 컴퓨터공부
- 아이패드
- 프로그래밍
- DFS
- 알고리즘
- 스위프트플레이그라운드
- 영어공부
- 컴퓨터사이언스
- greedy
- 캐나다생활
- 애플
- c++
- 해커랭크
- c언어
- hackerrank
- C언어기초
- 너비우선탐색
- 캐나다
- 백준
- BFS
- 그리디
- 다이나믹프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |