분류 전체보기
-
BOJ 2631 - 줄세우기PS 2024. 8. 5. 12:14
https://www.acmicpc.net/problem/2631 문제를 보고 좀 생각하다가 LIS를 이용하면 된다는 걸 깨달았으나, LIS를 푼지 너무 오래되어 LIS를 구현하지 못해 실패했었다.LIS 알고리즘을 다시 보고와서 정답을 맞출수있었다. LIS 문제 몇개 풀어봐야겠다...#include using namespace std;int n;int a[204];int cnt[204];int main(){ cin >> n; for (int i = 0; i > a[i]; } fill(cnt, cnt + 204, 1); // 초ㅣ장 lis를 구하고 전체길이 - lis 해주면 될듯 int longgest = 0; for (int i = 0; i cnt[i]) ..
-
BOJ 4485 - 녹색 옷 입은 애가 젤다지?PS 2024. 8. 4. 20:28
https://www.acmicpc.net/problem/4485 다익스트라 문제였다. 그런데 이제 어떤 정점에서 다른정점까지의 비용이 1 4 8 이런식으로 주어지는 게 아니라,2차원 배열로 어떤 정점에 도착했을 때의 비용이 주어지는.그러니깐, 한곳에서 다른곳으로 이동가능한 간선이 주어지는 게 아니라 bfs나 dfs문제 풀때처럼 상하좌우로 움직이는 거 가능하고, 어디 도착하면 거기 비용이 플러스 되는 형식이다. 재밌었다.#include using namespace std;int n;int a[130][130];int num;int inf = 1e9;int d[130][130];int dirY[4] = {1, -1, 0, 0};int dirX[4] = {0, 0, 1, -1};int main(){ i..
-
7. Front 회원가입 페이지 전면 수정 및 서버통신MERN Stack ChatApp 2024. 8. 4. 18:43
회원가입 페이지를 전면 수정했다.현재 내가 보며 공부하고 있는https://www.youtube.com/watch?v=nvjYCK9oDRU 에서는 react로 만들고 있고, chakra ui라는 거를 사용해 ui를 만들고 있는데서 우선 나랑 차이가 좀 난다. (나는 nextJS로 만들고 있음)또, 이게 좀 옛날 동영상이다 보니 이때 이후로 많은게 업데이트 되었는데,대표적으로 여기서는 form안의 input값들을 전부 useState로 관리하고 있고, 따로 유효성검사도 해주고있지 않다. 그런데 나는 유효성검사도 좀 해주고, 서버와 통신하는 방식도 살짝 다르게 해주고 싶었다.그래서 전부 바꿔줬는데, 시간이 좀 걸렸다.난이도는 그렇게까지 높지는 않았지만, 귀찮음 점수가 꽤 높았다.난이도 : ⭐️⭐️귀찮음 : ..
-
BOJ 5972 택배 배송PS 2024. 8. 2. 10:53
https://www.acmicpc.net/problem/5972 문제를 읽으면서 바로 다익스트라 문제다 라는 걸 알았다.그런데 문제 설명이 조금 난잡하다고 해야하나 복잡하다고 해야하나 그렇게 느껴졌었다.다익스트라를 약간 오랜만에 풀어서 처음에 살짝 헤맸는데, 금방 다시 잘 풀어낼 수 있었다.특별히 꼬거나 그런것도 없고 그냥 다익스트라로 풀어주면 된다.#include using namespace std;int n, m;int d[50004];int inf = 1000 * 50004;int a, b, c;vector> v[50004]; // {비용, 정점}int main(){ fill(d, d + 50004, inf); cin >> n >> m; for (int i = 0; i > a >>..
-
6.유저인증 - JWT - 로그인, 회원가입등을 만들어보자. - 서버 ++ 에러핸들링PS 2024. 8. 1. 15:19
https://www.youtube.com/watch?v=nvjYCK9oDRU&list=PLKhlp2qtUcSZsGkxAdgnPcHioRr-4guZf&index=9 먼저 라우터를 만들어주자. app.get('/api',(req,res) => {}) 이렇게 하는 것보다는 라우터로 분기해주는 게 훨씬 깔끔하니깐.음, 그리고 미리 양해를 구하지만 이 글은 어느정도 진행을 하고 나서 쓴 글이기 때문에 실제 작업 순서와는 약간 다를 수 있다. 그래서 코드에 나중에 만들어질 메서드 같은게 미리 들어있을 수 있다. backend/routes/userRouter.js를 만들어준다.// backend/routes/userRoutes.jsconst express = require("express");const { reg..
-
5. express server와 몽고DB 연결하기MERN Stack ChatApp 2024. 8. 1. 11:01
https://www.youtube.com/watch?v=mnHjdgdCK6c&list=PLKhlp2qtUcSZsGkxAdgnPcHioRr-4guZf&index=8 몽고디비 사이트가서 가입하고, 프로젝트만들고 이런거는 굳이 적지 않겠다.프로젝트를 만들고 나면 클러스터를 만들어야 한다. 클러스터 만들때 유저랑 비밀번호 생성하던가?잘 기억이 안나는데 아무튼 혹시라도 이때 유저랑 비밀번호를 생성한다면 어따가 잘 저장해둔다.그리고 네트워크 액세스에 들어가 내가 접속할 수 있게끔 아이피를 추가해준다.아마 기본으로 현재 아이피가 추가되어 있을텐데, 혹시 아니라면 추가해준다.나중에 서버를 ec2등에 배포하거나 한다면 배포된 곳의 ip도 여기에 등록을 해줘야 디비에 접근할 수 있다. 다음으로 데이터베이스를 눌러서 들..
-
BOJ 14719 빗물PS 2024. 8. 1. 10:07
https://www.acmicpc.net/problem/14719 재밌는 문제였다. 문제를 낸 방식도 재밌고, 생각하는 것도 재밌었다.처음 생각했던건 2차원 그래프를 그리면 어떨까 했다.빈공간은 0, 벽은 1그래서0 0 11 0 11 1 1뭐 이런식으로 해서 세어주는 식으로 하면 되지 않을까 싶었다.그러면 어떻게 세어줘야 할까 생각하다가,처음 벽이 세워지고 그 다음 벽이있는 곳까지의 개수를 세어주면 된다는 걸 알았고,그렇다면 왼쪽에서 오른쪽으로 이동하는 걸 세면 되는데,위에서부터 0이 될때까지 내려가면 된다는 걸 알았다.그렇다면 굳이 2차원 배열을 만들 필요도 없이 왼쪽에서 오른쪽으로 가며, 왼쪽 수보다 작은 수의 개수를 세다가 큰수가 나오면 잠깐 멈추고 뭐 이런거를 생각했었다. 그러니깐 오큰수 문제..
-
4. 로그인, 회원가입 폼 만들기MERN Stack ChatApp 2024. 7. 31. 19:42
https://www.youtube.com/watch?v=5QcAcfEf-CI&list=PLKhlp2qtUcSZsGkxAdgnPcHioRr-4guZf&index=7 리액트, 자바스크립트를 => 넥스트, 타입스크립트로 변환, css 와 tailwindCss 미숙으로 꽤 오래 걸렸다.그냥 단순한 로그인/회원가입 화면이다. 여기서 배웠던 점은 일단 css, tailwind css를 사용하며 익숙해져가고 있고, background image등을 파일로 넣어서 사용하고 싶다면 public 폴더에 이미지 파일을 넣고bg-[url('/background.png')] 이런식으로 사용해주면 된다는 것.// app/layout.tsximport type { Metadata } from "next";import { Int..