[ localStorage에서 데이터 얻기 ] 필요한 데이터를 이미 웹 페이지에서 localStorage에 저장하고 있었음! → localStorage 내용 얻어오기 1. 데이터 가져올 Tab의 ID 얻기 chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab)=>{ if(changeInfo.status === 'complete'){ if(tab.url.includes("URL주소"){ globalTabId = tabId; } } }); 사용자가 미리 지정된 URL에 접속할 경우, 해당 탭의 ID를 저장 해당 프로젝트에서는 탭의 상태를 유지해야 하기 때문에 전역변수로 저장 후 활용 2. localStorage 가져올 Script 주입 chrome.scrip..
[ manifest.json ] 사용자의 Tab 정보를 활용하여 화면을 제어하기 때문에, permissions을 추가 /* manifest.json */ ... "permissions": [ "...", "tabs", "scripting" ], "host_permissions":[ /* 특정 URL에 script 주입을 위한 권한 */ "http://*/", "https://*/" ], ... [ Background JS ] 다양한 브라우저 event들을 monitoring하여 작업을 수행하는 코드를 작성한다 탭 URL 변경 감지 chrome.tabs.onUpdated.addListener((tabId, changeInfo, tab)=>{ if(changeInfo.status === 'complete')..
Chrome Extension 만들기 - 1 💡 Chrome Storage를 활용한 Extension의 CRUD [ 환경 ] [FE] HTML / CSS [BE] Javascript / JQuery [DB] Chrome Storage Chrome Extension ( MV3 ) [ manifest.json ] Chrome Extension의 뼈대같은 존재인 manifest.json 작성! manifest만 작성해도 Chrome Extension에 올려 앱을 확인할 수 있다. { "name": "Docong", "description": "Docong Extension", "version": "1.0", "manifest_version": 3", "action": { "default_popup": "pop..
문제 (Gold 1) https://www.acmicpc.net/problem/2233 2233번: 사과나무 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 2,000)이 주어진다. 둘째 줄에는 벌레가 만드는 2×N자리의 이진수가 주어진다. 셋째 줄에는 썩은 사과의 위치를 나타내는 두 정수 X, Y가 주어진다. 이는 2×N자리 www.acmicpc.net 풀이 트리는 어렵다!!!!!!!!!!!!!!!!! 전체 로직 1. parent 배열과 root 배열 채우기 Stack을 이용하여 트리 만들기 이진 배열을 비교하며 삭제하고자 하는 노드의 '실제 인덱스' 구하기 2. 가장 가까운 공통 조상 구하기 parent배열을 사용한 재귀 기저조건: 루트까지 왔을 경우 or 다른 노드가 이미 방문 했던 노드를 방문할 경우 로..
문제 (Silver 1) https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 풀이 아이디어 줄 단위로 더해줌 [ ][ ][ ][ ][ ] [ ][ ][o][o][ ] -> o 부분 합: sum(2,5) - sum(2,2) [ ][ ][o][o][ ] -> o 부분 합: sum(3,5) - sum(3,2) o의 최종 부분 합: ( sum(2,5) - sum(2,2) ) + ( sum(3,5) - sum(3,..
문제 (Silver 3) https://www.acmicpc.net/problem/9996 9996번: 한국이 그리울 땐 서버에 접속하지 총 N개의 줄에 걸쳐서, 입력으로 주어진 i번째 파일 이름이 패턴과 일치하면 "DA", 일치하지 않으면 "NE"를 출력한다. 참고로, "DA"는 크로아티어어로 "YES"를, "NE"는 "NO"를 의미한다. www.acmicpc.net 풀이 문제가 어렵지는 않지만 이해를 잘 해야하는 문제! substring으로 나눌때에 반례가 많으니 이를 잘 체크해주어야 한다. 코드 더보기 package implement; import java.io.*; import java.util.*; public class Main_9996_한국이그리울땐서버에접속하지 { public static ..