본문 바로가기
728x90
반응형

알고리즘 (C++)19

[백준]20499번: Darius님 한타 안 함? https://www.acmicpc.net/problem/20499 20499번: Darius님 한타 안 함? 그가 「진짜」이면 gosu, 「가짜」이면 hasu를 출력한다. www.acmicpc.net 문제 접근 아이디어 1) string input 으로 한번에 입력 받습니다. 2) string temp를 선언합니다. 이게 가장 중요한데 이유는 10의 자리 이상을 받기 위해섭니다. 3) for i to input.size() 수행하면서 input[i] != '/' temp += input[i]를 넣으면서 자동으로 자리수를 채웁니다. 4) input[i] == '/' 일 때 stoi(temp)를 통해 int로 변환하고 temp = ""로 비웁니다. (이때 temp = " "면 공백 들어와서 틀립니다) #i.. 2024. 2. 1.
[백준]17388번: 와글와글 숭고한 https://www.acmicpc.net/problem/17388 17388번: 와글와글 숭고한 첫 번째 줄에 숭실대학교의 참여도, 고려대학교의 참여도, 한양대학교의 참여도를 의미하는 세 자연수 S, K, H가 공백으로 구분되어 주어진다. (0 ≤ S, K, H ≤ 100) 세 대학의 참여도는 모두 다르다. www.acmicpc.net 회사에 취직하고 나서도 매일매일 백준 문제는 풀고있습니다. 왜냐! 코테를 위함보단 적어도 문제 해결력과 다른 사람들 생각도 보면서 사고 확장을 위해서지요~ 크크크 여튼 이번에 푼 문제는 stl을 나름 잘 응용하면 생각보다 재밌게도 해결할 수 있어 올려봅니다. 문제 접근 방법) 문제에서 미리 대학교는 정해져 있기에 점수를 보고 합산을 구해 100점 아래면 가장 낮은 점수인.. 2024. 1. 27.
[백준]2325번: 자료구조는 정말 최고 https://www.acmicpc.net/problem/23253 23253번: 자료구조는 정말 최고야 위 그림처럼 책이 쌓여 있으므로, 첫 번째 더미 - 두 번째 더미 - 첫 번째 더미 - 두 번째 더미 순으로 꺼내면 책 번호순으로 나열할 수 있다. www.acmicpc.net 처음 이 문제를 풀때 더미의 순서를 일정하게 유지하는 부분이 힘들었다. 이에 다양한 접근법을 시도하면서 vector를 통해 해결했다. 접근 방법 1) 우선 순위 큐를 선언한다. 이때 오름차순으로 정렬될 수 있게 설정한다. 2) 우선 순위 큐에 해당 책과 어느 더미 몇 번째에 위치하는지 저장한다. 3) lis라는 vector를 통해 각 더미의 현재 위치를 추적하는데 사용한다. 즉 lis의 각 요소 해당 더미의 현재 위치를 나타내.. 2023. 12. 22.
[백준]1296번: 팀 이름 정하기 https://www.acmicpc.net/problem/1296 1296번: 팀 이름 정하기 연두는 프로그래밍 대회에 나갈 팀 이름을 정하려고 한다. 미신을 믿는 연두는 이환이에게 공식을 하나 받아왔고, 이 공식을 이용해 우승할 확률이 가장 높은 팀 이름을 찾으려고 한다. 이환 www.acmicpc.net 푸는데 나름 재밌는 문제였어서 풀이를 올리려 합니다. 접근 아이디어는 다음과 같습니다. 1) vector를 통해 (이길 확률, 팀명)을 저장 받습니다. 또한 loveArry를 통해 LOVE 순서대로 개수를 카운팅 한다. 2) LOVE를 개수를 연두 이름과 팀명을 받아 카운팅 해주는 CountLove 함수를 선언한다. 3) 카운팅 된 값을 기준으로 확률을 연산하여 pair의 first값에 해당 팀명에 .. 2023. 12. 13.
[백준]25497번: 기술 연계마스터 임스 https://www.acmicpc.net/problem/25497 25497번: 기술 연계마스터 임스 $1$, $2$, $S$ - $K$, $2$로 스킬을 성공적으로 총 4번 사용했다. www.acmicpc.net 자료구조 알고리즘 중 stack을 이용한 문제다. 푼 사람이 적어 내가 고민한 아이디어를 공유해보려 한다. string을 통해 기술을 입력 받는다면 사실상 N은 필요없다. 접근 아이디어는 다음과 같다. 스킬을 보면 SK와 LR은 세트다. 즉 S가 먼저 나와야 K가 가능하고 L이 먼저 나와야 R이 가능하다. 그렇다면 이 두개의 세트를 담을 stack을 준비한다. 각 stack은 SK와 LR만을 담는다. 이때 lrCombo stack은 LR만을 skCombo stack은 SK 기술만을 처리한다... 2023. 12. 6.
[백준]2018: 수들의 합 5 https://www.acmicpc.net/problem/2018 2018번: 수들의 합 5 어떠한 자연수 N은, 몇 개의 연속된 자연수의 합으로 나타낼 수 있다. 당신은 어떤 자연수 N(1 ≤ N ≤ 10,000,000)에 대해서, 이 N을 몇 개의 연속된 자연수의 합으로 나타내는 가지수를 알고 싶어한 www.acmicpc.net 투 포인터 개념에 대해 처음 접해봤다. 사실상 반복문에서 범위를 빠르게 정해가며 계산하기 위한 개념임을 배웠다. 즉 while 문을 도는데 start와 end 변수를 활용해 start ~ end까지 합을 구해가며 주어진 N과 비교하는 방법이다. start, end, cnt 변수를 준비하고 start = 1, end = 1, cnt = 1에서 시작한다. start + end =.. 2023. 12. 5.
728x90
반응형