목록map (4)
알고리즘 모음(C++)
문제 링크입니다. https://www.acmicpc.net/problem/1269 1269번: 대칭 차집합첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어www.acmicpc.netmap을 사용하는 문제입니다.원소의 갯수가 200,000개 까지이기에 찾기 위해서 이중for문을 사용한다면 바로 시간초과가 생기는 문제입니다. 따라서, map을 사용해, 빠르게 찾는 방법을 사용해야합니다. 첫번째 수열과 두번째 수열을 입력 받은 뒤, 서로의 map에 저장해주고, for문을 통해 수열의 값이 다른 수열에 있는지 찾으면 됩니다. 자세한 것은 코드를 참고해주세요.#de..
문제 링크입니다. https://www.acmicpc.net/problem/11652 11652번: 카드 준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지 www.acmicpc.net MAP을 사용하면 쉽게 풀 수 있는 문제였습니다. 숫자 카드 중, 가장 많은 카드를 구하는 문제입니다. 카드를 입력 받으면서 map을 통해 해당 카드의 갯수를 증가합니다. 마지막에 map을 통해 for문을 이용하면서 가장 많으면서 작은 수를 구해주면 됐습니다. 자세한 것은 코드를 참고해주세요 #define _CRT_SECURE_NO_WARNINGS #include #incl..
문제 링크입니다. https://www.acmicpc.net/problem/1620 1620번: 나는야 포켓몬 마스터 이다솜 첫째 줄에는 도감에 수록되어 있는 포켓몬의 개수 N이랑 내가 맞춰야 하는 문제의 개수 M이 주어져. N과 M은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수인데, 자연수가 뭔지는 알지? 모르면 www.acmicpc.net map을 사용하는 문제였습니다. 출력을 2가지로 나눠서 해야합니다. 1. 포켓몬의 이름이 들어왔을 경우 -> 해당 포켓몬의 입력 번호 2. 포켓몬의 번호가 들어왔을 경우 -> 해당 번호 포켓몬의 이름 2번 출력의 경우는 쉽게 만들 수 있습니다. string 배열을 만든뒤, 입력 순서에 맞게 포켓몬을 저장해주면 됩니다. 1번 출력의 경우는 포켓몬의 이름..
문제 링크입니다. https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net map과 string을 이용하면 간단하게 풀 수 있는 문제였습니다. N과 M의 범위가 100,000 이기에 pair를 사용해 다중 for 문을 사용하면 시간 초과가 생길 수 있습니다. 따라서 map을 이용해, 사이트 주소와 비밀번호를 저장한 뒤, 해당 사이트의 비밀번호만 출력할 수 있도록 해야합니다. 이를 생각하고 풀면 간단한 문제였습니다. 자세한 ..