본문 바로가기

Set11

[백준 13915/javascript] 현수의 열기구 교실 set을 써서 중복 문자를 거르고, 배열로 담아 다시 set 을 사용하여 중복을 제거하는 문제이다 JSON.stringify 를 사용하면 참조가 달라도 값이 같으면 set 에서 중복으로 제거할수 있다는 점을 이용하였다 https://www.acmicpc.net/problem/13915 13915번: 현수의 열기구 교실 현수는 열기구 여름특강의 강사다. 현수는 매우 성실해서 모든 수강생들의 열기구 비행을 기록하고있다. 매 비행 이후, 현수는 그 비행에 참석한 수강생들의 기록을 리스트에 추가한다. 리스트 www.acmicpc.net let input = []; const readline = require("readline").createInterface({ input: process.stdin, output.. 2022. 9. 9.
[백준 16499/javascript] 동일한 단어 그룹화하기 문자열의 각 문자를 배열에 넣고 정렬하여 Set 객체에 넣어 중복을 제거하여 Set 객체 내의 요소 수를 세주면 되는 문제이다 문제보다 헛짓으로 인한 부수적으로 얻은 지식이 큰 도움이 된 문제이다 https://www.acmicpc.net/problem/16499 16499번: 동일한 단어 그룹화하기 첫째 줄에 단어의 개수 N이 주어진다. (2 ≤ N ≤ 100) 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 소문자로만 이루어져 있고, 길이는 10을 넘지 않는다. www.acmicpc.net let input = []; const readline = require("readline").createInterface({ input: process.stdin, output: proc.. 2022. 8. 30.
자바스크립트 에서 set 으로 중복 제거가 안될때 inp.shift(); let inparr = []; inp.forEach((el) => { let temp = []; for (ch of el) { temp.push(ch); temp.sort(); temp.join(""); inparr.push(temp); } }); console.log(inparr); let set = new Set(inparr); let set = new Set([...inparr].map((x) => JSON.stringify(x))); console.log(set); 자바스크립트를 이용해 코딩테스트를 풀던 도중 중복을 제거하기 위해서 Set 객체를 사용하던 중에 중복 제거가 안됐다 // inparr.push(temp)를 for밖으로 안뺀 바보짓이 원흉... 입력 예시중 하나로.. 2022. 8. 30.
[백준 1269/c++] 대칭 차집합 처음에 map 을 이용해서 ++ -- 로 카운트 했더니 테스트 케이스에 같은 수가 중복이 있었는지 에러가 떴다 중복일 경우도 차집합에서 한번에 다 사라지게 해야하므로 중복 자체를 없애기 위해 set 에 넣어서 find 로 카운트, 카운트 한 수는 양 집합 모두에 있는 것이므로, 두 집합을 더한 후 카운트x2 로 양쪽에 있는 만큼 빼주면 차집합의 원소 개수 완성이다 https://www.acmicpc.net/problem/1269 1269번: 대칭 차집합 첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어 www.acmicpc.net #include using .. 2022. 7. 25.