본문 바로가기

전체 글225

[백준] 17413 단어 뒤집기 (C++) 문제 문제 분석 - 문자열의 substr 함수를 이용해도 되고 deque을 이용해도 된다. 필자는 deque을 이용하여 풀이했다. - 입력을 받을 때 띄어쓰기를 입력 종료로 받아들여지면 안되므로 getline으로 입력받는다. - '' 문자열이 나오면 이전 단어는 그대로 출력 + reverse_flag = true; 을 진행한다. - ' ' 문자열(띄어쓰기)이 나오면 reverse_flag 조건에 맞게 출력해준다. - 일반 문자열이 입력되면 deque에 push 해준다. - 단어를 그대로 출력하려면 front() 순서대로 출력해주고, 단어를 반대로 출력해주려면 back() 순서대로 출력해주면 된다. - 이때 문제의 조건 2번에서 '문자열의 시작과 끝은 공백이 아니다.' 이므로 마지막 단어가 deque에 남.. 2024. 2. 8.
[백준 2606번] 바이러스 (C++) 문제 문제 분석 - 1번 컴퓨터와 연결되어 있는 뭉텅이의 개수를 세는 문제이다. - DFS/BFS을 통해 연결된 한 뭉텅이의 개수를 출력하면 된다. 정답 코드 // 1번과 연결된 뭉텅이의 크기를 찾는 문제 (BFS 풀이) #include #include using namespace std; #define MAX_N 101 // N의 최댓값 : 100 int Board[MAX_N][MAX_N]; // 연결되었으면 1 int visited[MAX_N]; // 감염되었으면 1 int node; void bfs(int start_node) { int ans = 0; // 바이러스에 감염된 컴퓨터 수 queue q; // 초기 감염 컴퓨터 처리 q.push(start_node); visited[start_node.. 2024. 2. 7.
[백준 2910번] 빈도 정렬 (C++) 문제 문제 분석 - 먼저 C의 값이 높다. 이 점을 유념해서 봐야한다. (단, 자료형은 int 형을 사용해도 된다. 21억을 넘진 않기 때문이다.) [방법1] 자료를 저장할 때 배열의 인덱스로 접근하는 방식으로 문제를 해결한다면 메모리 초과가 날 것이다. => 왜냐하면 배열은 먼저 메모리에 할당을 해야 값을 넣을 수 있기 때문이다. [방법2] 이런 문제를 해결하기 위해 insert가 될 때마다 메모리에 할당하는 map 자료구조를 사용하면 메세지의 최대 길이는 1000이므로 메모리 문제가 해결된다. 그러나 map/set과 같은 해시 자료구조는 넣은 순서대로 저장되지 않는다. (vector, tuple, pair의 자료구조는 넣은 순서대로 저장된다.) [방법3] 방법1과 방법2에서 도출되었던 문제를 바탕으로.. 2024. 2. 7.
[백준 19583번] 싸이버개강총회 (C++) 문제 문제 분석 - 라이브 스트리밍이 열리고부터 개강총회 시작 전까지 채팅을 친 사람을 1) 이라고 하고, 개강총회가 끝나고부터 라이브 스트리밍이 끝날 때까지 채팅을 친 사람을 2) 이라고 하면, 1)과 2)를 모두 만족하는 사람의 수를 출력하는 문제이다. - 문자열 끼리는 대소비교가 가능하다. 예를 들어 00:30은 01:25 보다 작다. 이를 이용하면 이 문제를 해결할 수 있다. - 1) 에서는 채팅을 친 시간 = E 이면서 동시에 채팅을 친 시간 > S >> E >> Q; while (1) { string input_time, name; cin >> input_time >> name; if (cin.eof() == true) break; // 입력을 받을 때까지 입력받기 // 입장 로직 if (in.. 2024. 2. 7.
[Python] 네이버 쇼핑 상품 정보 크롤링 프로그램 구현 목표 (요구 사항) - 크롤링 대상 url : https://shopping.naver.com/home 네이버쇼핑 온/오프라인 상품 탐색과 쇼핑정보, 가격비교, 제품리뷰 등을 만나보세요 shopping.naver.com - 네이버 쇼핑 페이지에서 검색어 입력 시 상품의 "링크, 상품명, 가격, 사업자번호" 순으로 데이터가 저장되도록 한다. - 저장 형식 : 엑셀(.xlsx) 파일 - 조회 페이지 : 30~40페이지 Trouble Shooting(문제 상황 및 해결) 마주친 문제 상황 1 ) XPATH가 규칙적인 상황에서 그 모든 값을 가지고 와야 하는 경우에 직면 XPATH가 다음과 같이 규칙성을 띄는 경우, 이 모든 요소들을 다 가지고 와야한다면 어떻게 해야할까? //*[@id="content"].. 2024. 2. 5.