본문 바로가기
반응형

전체 글131

[cpp 알고리즘] 백준 3474 교수가 된 현우 [백준] 3474 교수가 된 현우 cpp(c++) 풀이알고리즘: 수학, 정수론https://www.acmicpc.net/problem/3474문제 요약- 자연수 N이 주어지면 N!의 오른쪽 끝에 있는 0의 개수를 구하기풀이 정리-  2의배수*5의배수로 0이 생기는데, 2의 배수는 많기 때문에 5의 배수의 최대 개수를 구하면 된다. ex) 60!의 경우는 5의 배수(60/5 =12)와 25의 배수(60/25=2)의 개수를 합친 12+2=14 로 답이 14가 나온다.C++ 코드#include #define ll long longusing namespace std;ll T, N;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0.. 2024. 11. 10.
[cpp 알고리즘] 백준 17827 달팽이 리스트 [백준] 17827 달팽이 리스트 cpp(c++) 풀이알고리즘: 수학, 구현https://www.acmicpc.net/problem/17827문제 요약- 선형 단방향 연결리스트로 1번 부터 N번 노드까지 연결되어 있다.- 이 때, N번 노드가 1번 노드를 제외한 임의의 노드를 가리켜 사이클을 생기는 연결 리스트를 이룬다. - 이 때 K번 노드에는 어떤 값이 있을지 구하는 문제이다. 풀이 정리- 연결리스트가 된 이후에 K번째 값들을 나열해 보았고, 아래와 같은 수식을 얻을 수 있었다.- k번째 값이 (V-1)보다 작으면 (=연결되지 않는 부분)이면 해당 인덱스의 값을 출력해주면 된다.- 그 외의 경우는, 반복되기 때문에 V번째로부터 (K-(V-1)) % (N-(V-1)) 만큼 떨어져 있는 값을 출력해주면 .. 2024. 11. 9.
[cpp 알고리즘] 백준 20005 보스몬스터 전리품 [백준] 20005 보스몬스터 cpp(c++) 풀이알고리즘: 구현, 그래프 이론, 그래프 탐색, 시뮬레이션, 너비우선탐색https://www.acmicpc.net/problem/20005문제 요약- 지도의 크기(M, N)과 플레이어의 수(P)가 주어진다. - 지도에는 .(이동할 수 있는 길), X(이동할 수 없는 길), 알파벳 소문자(플레이어 아이디), B(보스 몬스터) 위치가 주어진다.- 각 플레이어의 아이디(알파벳 소문자)와 dps(1초당 얼만큼의 보스몬스터의 체력을 줄일 수 있는지)가 주어지고, 보스 몬스터의 HP가 주어진다.- 모든 플레이어들은 보스몬스터의 위치로 최대한 빠른 경로로 이동하며, 이동한 경우 공격을 바로 시작한다. (공격에 소모되는 시간, 상/하/좌/우 한 칸을 이동하는 데 소요되는.. 2024. 11. 8.
우분투(Ubuntu) 서버에서 젠킨스(Jenkins) 설치 및 사용하기 11월 6일~7일 실습 젠킨스를 활용한 CI/CD 파이프라인 구축 실습 1단계 - 우분투 서버에 젠킨스 설치하기 이번 수업에서는 Jenkins(젠킨스)를 설치하고, 실제 실습을 통해 CI/CD 파이프라인을 구축하는 방법을 학습했습니다. 젠킨스는 오픈 소스 자동화 서버로, 개발팀이 소프트웨어 빌드, 테스트, 배포를 자동화하고, 프로젝트의 지속적 통합(Continuous Integration, CI) 및 지속적 배포(Continuous Delivery, CD)를 쉽게 설정할 수 있도록 도와준다. 특히 팀 협업과 개발 프로세스의 효율성을 높이는 데 큰 도움을 주는 도구이다.1. Jenkins란?1-1. Jenkins의 개요젠킨스는 소프트웨어 개발 프로세스를 자동화하는 오픈 소스 CI/CD 도구다. 다양한 플러.. 2024. 11. 7.
Helm을 이용한 Kubernetes 애플리케이션 배포 방법 11월 6일(수) 수업 내용 중 Kubernetes 환경에서 애플리케이션을 관리하는 것은 복잡한 작업이 될 수 있다. 여러 Pod, Service, Volume 등을 개별적으로 관리하고 배포하려면 많은 작업을 거쳐야 한다. 이를 해결하기 위해 Kubernetes에서 제공하는 패키지 관리 도구인 Helm을 사용하여 애플리케이션을 손쉽게 배포하고 관리할 수 있다.  1. Helm 개요Helm은 Kubernetes 애플리케이션을 배포하고 관리하기 위한 도구Kubernetes에서 애플리케이션을 배포할 때 Pod, ReplicaSet, Deployment, Service 등 여러 리소스를 개별적으로 관리해야 하지만, Helm을 사용하면 이러한 작업들을 패키지 형태로 묶어 한 번에 배포하고 관리할 수 있다.Helm.. 2024. 11. 6.
Node.js 애플리케이션 GitHub Actions로 자동화 테스트 구성하기 11월 5일 (화) 실습 중  오늘 수업에서는 Node.js 애플리케이션을 GitHub Actions를 활용해 자동으로 테스트하는 실습을 진행했다. 테스트 코드를 작성한 후 GitHub Actions를 통해 main 브랜치에 변경 사항이 푸시될 때마다 자동으로 테스트가 수행되도록 설정했다.0. 준비사항 1) github 레포지토리 생성2) Node.js 프로젝트 생성빈 디렉터리를 생성프로젝트 초기화: npm init -y1. Node.js 프로젝트 만들기1) 필요한 패키지 설치Express 설치: npm install expressNodemon 설치 (개발 환경 전용): npm install --save-dev nodemon2) package.json 수정{ "name": "autoever_nodejs.. 2024. 11. 5.
반응형