728x90
반응형

분류 전체보기 222

[Algorithm] 백준 14888번 연산자 끼워넣기 (Java)

https://www.acmicpc.net/problem/14888문제N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 N-1개의 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다.우리는 수와 수 사이에 연산자를 하나씩 넣어서, 수식을 하나 만들 수 있다. 이때, 주어진 수의 순서를 바꾸면 안 된다.예를 들어, 6개의 수로 이루어진 수열이 1, 2, 3, 4, 5, 6이고, 주어진 연산자가 덧셈(+) 2개, 뺄셈(-) 1개, 곱셈(×) 1개, 나눗셈(÷) 1개인 경우에는 총 60가지의 식을 만들 수 있다. 예를 들어, 아래와 같은 식을 만들 수 있다.1+2+3-4×5÷61÷2+3+4-5×61+2÷3×..

Algorithm/Baekjoon 2024.11.15

[제로베이스] 제로베이스 대기업 개발자 취업 보장반 1기 수강 후기 : 대기업 개발자가 되고 싶다면 필수!

오늘은 제로베이스에서 주관하는 대기업 개발자 취업 보장반에 대해 다뤄보겠습니다!1. 해당 스쿨을 듣게 된 계기일단 저의 스펙을 나열해보겠습니다.컴퓨터공학과 전공데이터와 관련하여 2개월 간 연구 연수생 생활인공지능하다가 4학년 말에 웹으로 전향하여 타사의 부트캠프 6개월 간 수강백엔드 개발자로 풀스택 개발도 가능HTML, CSS, JavaScript, Java, Spring, SpringBoot, MySQL, MyBatis, JPA개발 리더로서 웹 프로젝트 다수 경험코멘트의 직무부트캠프를 통해 Kubernetes(k8s) 학습일단 졸업하고 나서 본가에서 혼자의 힘으로 취준을 하는 게 쉽지 않았어요 ㅜㅜ스스로 나태해질 수 밖에 없었고 약간의 강제성이 필요하다는 생각을 하게 되었습니다.또한 요즘 워낙 날고 기..

[Algorithm] 백준 1158번 요세푸스 문제 (Java)

https://www.acmicpc.net/problem/1158문제요세푸스 문제는 다음과 같다.1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다.N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오.입력첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)출력예제와 같이 요세푸스 순열을 출력한다.예제 입력 1..

Algorithm/Baekjoon 2024.10.10

[Algorithm] 백준 16234번 인구 이동 (Java)

토마토 문제와 비슷한데 조금 더 난이도 있는 문제였다..!아직 그래프 탐색에 익숙하지 않아서 푸는데 시간이 좀 걸렸다.더 많은 문제를 풀어봐야할 것 같다!https://www.acmicpc.net/problem/16234 문제N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다.오늘부터 인구 이동이 시작되는 날이다.인구 이동은 하루 동안 다음과 같이 진행되고, 더 이상 아래 방법에 의해 인구 이동이 없을 때까지 지속된다.국경선을 공유하는 두 나라의 인구 차이가 L명 이상, R명 이하라면, ..

Algorithm/Baekjoon 2024.10.10

[Algorithm] 백준 7576번 토마토 (Java)

1년 동안 안했던 알고리즘 공부 다시 시작..!!그전까지는 Python으로 알고리즘을 풀었는데 이제 Java로 바꿔서 풀 예정!개인적으로 그래프 탐색이 어려워서 계속 외면했는데 이제 열심히 풀어보려고 한다...!첫 문제는 그래프 탐색 시작하기 가장 좋은 백준의 토마토 문제!https://www.acmicpc.net/problem/7576문제철수의 토마토 농장에서는 토마토를 보관하는 큰 창고를 가지고 있다. 토마토는 아래의 그림과 같이 격자 모양 상자의 칸에 하나씩 넣어서 창고에 보관한다.창고에 보관되는 토마토들 중에는 잘 익은 것도 있지만, 아직 익지 않은 토마토들도 있을 수 있다. 보관 후 하루가 지나면, 익은 토마토들의 인접한 곳에 있는 익지 않은 토마토들은 익은 토마토의 영향을 받아 익게 된다. 하..

Algorithm/Baekjoon 2024.10.02

[Backend] Multi Profile 설정

1. Multi Profile로컬, 테스트, 운영 서버 등 프로젝트를 진행하는 환경에 따라 여러 설정 값을 다르게 할 수 있다.Multi Profile을 사용하면 매번 환경 설정을 수정할 필요 없이 적용할 수 있다.2. SpringBoot에서 Multi Profile 설정application.yml 파일에서 설정 가능--- 을 통해 프로필 구분실제 환경을 나눠서 진행하지 않아서 DB 환경은 동일하게 하고 나눠서 설정만 해봤다.실제로는 각 환경에 따라 DB 환경도 달라질 것이다.만일 공통된 값을 모든 환경에 적용하기 위해서는 common 이라는 프로필을 만들어서 설정 가능하다.제일 위에 공통된 값을 사용하고 싶은 환경에만 common 프로필을 추가해주면 된다.현재 아래 코드는 spring.profiles...

Web/Backend 2024.09.11

[Backend] Swagger 설정

1. Swagger개발한 Rest API를 편리하게 문서화하는 것이를 통해서 관리 및 제 3의 사용자가 편리하게 API를 호출해보고 테스트 할 수 있는 도구2. SpringBoot에서 Swagger 설정build.gradle 파일에 dependency 추가// Swaggerimplementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2'main에 config 파일 추가package com.example.paymentsystem.config;import io.swagger.v3.oas.models.OpenAPI;import io.swagger.v3.oas.models.info.Info;import org.springframework.conte..

Web/Backend 2024.09.11

[Backend] Logback 설정

항상 개발을 하면서 로그를 잘 볼 수 있어야 한다.서버를 킨 후 시스템의 상태와 동작 정보를 시간 경과에 따라 기록함으로써 개발 과정에서 발생한 문제를 확인할 수 있고 다양한 정보를 수집할 수 있다.1. LogbackJava에서 가장 많이 사용하던 로깅 라이브러리인 log4j의 후속 버전SLF4j의 구현체로 Spring Boot라면 별도의 dependency 추가 없이 기본적으로 포함되어 있다.Logback은 Log4j에 비해 향상된 필터링 정책, 기능, 로그 레벨 변경 등에 대해 서버를 재시작할 필요 없이 자동 리로딩을 지원하고 성능이 전반적으로 뛰어나다.2. Log Level총 5가지의 log levelERROR - WARN - INFO - DEBUG - TRACE 순으로 심각도가 높아진다.ERROR..

Web/Backend 2024.09.11

Github Action과 AWS CodeDeploy를 통한 CI/CD 설정

환경: AWS EC2 인스턴스(Linux), MySQL, SpringBoot 3.3.3CI/CD 과정CI/CD 흐름은 위 이미지와 같습니다. Github 상으로 코드를 Push 하게 되면 GitHub Actions이 자동으로 실행되어 CI (빌드) 작업을 수행하게 됩니다.코드상에 문제가 없다면 이때 빌드 작업을 통해 jar파일이 생성되게 되고 사전에 작성한 배포 스크립트 파일과 함께 AWS의 스토리지 서비스인 S3에게 전달되어 저장되게 됩니다.S3에 성공적으로 저장되었다면 EC2에 설치한 CodeDeploy Agent가 S3에 저장된 프로젝트 파일을 가져와서 내려받습니다.그 후, 배포 스크립트 파일을 읽어 들여서 프로젝트 실행을 시작합니다.즉, 깃허브 상으로 코드를 push 하기만 하면 자동으로 최신 버..

Server 2024.09.09

[Web] 웹서버와 WAS

1. 웹서버(Web Server)클라이언트(ex. 웹 브라우저)의 요청을 받아 정적인 컨텐츠(HTML, CSS, 이미지, JavaScript 파일 등)을 처리하고 응답하는 역할 특징정적 컨텐츠 제공HTML, CSS, 이미지, JavaScript 파일과 같은 정적인 리소스를 클라이언트에 전달WAS에 거치지 않고 바로 자원 제공HTTP 요청 처리주로 HTTP/HTTPS 프로토콜을 통해 클라이언트의 요청을 처리하고 응답동적인 컨텐츠 제공을 위한 요청 전달클라이언트의 요청을 WAS로 보내고 WAS가 처리한 결과를 클라이언트에게 전달기능의 단순성요청된 정적 파일을 찾아 반환하는 것이 주요 기능이기 때문에 매우 단순한 구조대표적인 예Apache HTTP ServerNginx클라이언트가 브라우저에서 특정 URL을 요..

Web 2024.09.09
728x90
반응형