그럴듯한 개발 블로그
클로저
<language>/javascript 2024. 1. 30. 23:35

c, c++ 만 해 본 나로선 클로저라는 머싯는 이름을 붙이는 게 이해가 안 갔다. 이거 그냥 함수 포인터 리턴하는 거 아니냐??라고 생각했다. 허나 아래 같은 상황에서는 애매하다. function createCounter() { let count = 0; return function() { count += 1; return count; }; } const counter = createCounter(); console.log(counter()); // 1 console.log(counter()); // 2 counter변수에 담긴 createCounter 내부에 선언되어 리턴된 function의 경우 counter 변수가 참조하고 있으므로 인스턴스가 살아있는 게 맞지만, 함수 createCounter의 ..

next.js 블로그 제작 후기
<frontend>/next.js 2023. 12. 25. 23:39

https://donghyun1998.github.io/ https://donghyun1998.github.io/ donghyun1998.github.io 42 서울 webserv과제가 끝난 후 빈둥대던 와중 sunhwang님이 nextjs로 개인 blog 만들기 스터디를 모집하시길래 후다닥 들어갔다. c, c++, webserv에서 배운 기본 지식? 정도만 알고 있는 나에겐 스터디 첫날 스터디원분들의 대화를 10퍼센트도 이해하지 못했다. 그래서 모르는 키워드들을 노션에 전부 적어두고 스터디장이신 sunhwang님을 붙잡고 죄다 물어봤다. 다행히 webserv에서 배운 지식들 기반으로 여러 번 여쭤본 결과 조금이나마 이해할 수 있었다. 한 달 동안 진행된 스터디에서 아주 많은 것들을 얻을 수 있었다. 1..

article thumbnail
nextjs mongoDB id 서버컴포넌트에서 클라이언트 컴포넌트로 안보내짐
<frontend>/next.js 2023. 12. 21. 01:27

nextjs로 게시판 만들어보고 있는데 기가 막힌 상황이 생겼다. // server component export default async function List() { let db = (await connectDB).db("noticedb"); let result = await db.collection("post").find().toArray(); return ( ); } // client component export default function ListItem({ result }) { // console.log(result); return ( {result.map((value, index) => { return ( {value.title} 🔧 { fetch("/api/post/delete", {..

article thumbnail
백준 2580 스도쿠 c++
<algorithm>/백준 2023. 12. 15. 19:02

https://www.acmicpc.net/problem/2580 2580번: 스도쿠 스도쿠는 18세기 스위스 수학자가 만든 '라틴 사각형'이랑 퍼즐에서 유래한 것으로 현재 많은 인기를 누리고 있다. 이 게임은 아래 그림과 같이 가로, 세로 각각 9개씩 총 81개의 작은 칸으로 이루 www.acmicpc.net 처음 풀이 : 레퍼런스로 넘기고 set 사용 때문에 시간 초과 난 것 같다. // 스도쿠 시간초과; #include #include #include using namespace std; vector board(9, vector(9, 0)); vector empty_xy; // 0 1 2 3 4 5 6 7 8 void eraseInvalidNum(int x, int y, set& s) { int s..

백준 14430 자원 캐기 c++
<algorithm>/백준 2023. 12. 13. 16:58

https://www.acmicpc.net/problem/14430 14430번: 자원 캐기 인류의 차세대 인공지능 자원 캐기 로봇인 WOOK은 인간 대신 자원을 캐는 로봇이다. WOOK은 언제나 제한된 범위 내에서 자원을 탐색하며, 왼쪽 위 (1, 1)부터 오른쪽 아래 (N, M)까지 자원을 탐색한다. www.acmicpc.net 문제 보자마자 dfs로 풀었다. 결과는 바로 시간 초과 col 300 row 300이라 dfs로 안되는걸 알았어야 했는데;; // 자원 캐기 #include #include using namespace std; vector board; int col, row, res; void dfs(int x, int y, int cnt) { if (x == col - 1 && y == r..

article thumbnail
백준 2116 주사위 쌓기 c++
<algorithm>/백준 2023. 12. 12. 15:19

https://www.acmicpc.net/problem/2116 2116번: 주사위 쌓기 첫줄에는 주사위의 개수가 입력된다. 그 다음 줄부터는 한 줄에 하나씩 주사위의 종류가 1번 주사위부터 주사위 번호 순서대로 입력된다. 주사위의 종류는 각 면에 적혀진 숫자가 그림1에 있는 www.acmicpc.net 요즘 문제 풀이 귀찮아서 안 올리는데 화딱지 나서 올린다. 주사위 잘 보면 (0,5) (1,3), (2,4) 다 하하 진짜 어이가없네 구현 자체는 굳이 map으로 두지 않아도 인덱스 계산으로 충분히 가능하다. 근데 내 비루한 두뇌론 헷갈려서 걍 밀고 매 층마다 map 따로 두어서 해결했다. // 주사위 쌓기 #include #include #include using namespace std; // (0..