일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바
- 페이코 추천인코드
- 페이코 초대코드
- 스프링
- 백준
- Flutter
- 페이코 추천인
- 플러터
- 배열
- 파이썬
- php 프로그래밍 입문 연습문제
- php 프로그래밍
- Java
- 자바 스프링
- C언어
- C
- php 프로그래밍 입문 예제
- 최단 경로
- spring
- php 프로그래밍 입문 솔루션
- SWEA
- 한정 분기
- 플러터 개발환경 설정
- php 프로그래밍 입문 문제풀이
- JAVA SPRING
- php 프로그래밍 입문
- php 프로그래밍 입문 3판
- programmers
- 페이코 친구코드
- php
- Today
- Total
목록2024/05 (6)
ImJay
[CodeTree/Java] 나무박멸 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai문제 해석이 문제에서는 n*n 격자 위에서 나무가 번식하고 제초제를 통해 그 성장을 억제하는 시뮬레이션을 진행한다. 주어진 입력은 격자의 크기 n, 시뮬레이션을 진행할 년 수 m, 제초제의 확산 범위 k, 제초제의 지속 시간 c로 구성된다. 각 격자 칸은 나무의 수, 빈 칸, 또는 벽으로 표시된다. 나무는 인접한 칸으로 성장하고 번식할 수 있으며, 제초제는 대각선 방향으로 k칸 만큼 확산되어 나무를 박멸한다. 제초제는 벽을 만나면 확산이 중단된다.풀이 과정성장: 모든 나무..
[BOJ/Java] 2531. 회전 초밥https://www.acmicpc.net/problem/2531문제 해석회전 초밥 문제는 주어진 회전 초밥 벨트에서 연속된 K개의 초밥을 선택했을 때, 이때의 다양한 초밥의 종류를 최대화하는 문제이다. 또한, 초밥의 선택은 하나의 쿠폰을 이용하여 원하는 초밥 한 종류를 추가할 수 있어, 이를 고려한 최적의 초밥 선택 전략을 요구한다.풀이 과정 초기 설정: 입력을 받아 전역 변수로 N(총 초밥의 개수), D(초밥의 종류 수), K(연속해서 먹을 초밥의 개수), C(쿠폰으로 먹을 수 있는 초밥 번호)를 설정하고, 초밥의 번호를 저장할 배열 arr을 선언한다.슬라이딩 윈도우 및 초밥 종류 카운팅: 첫 K개의 초밥을 선택하여 종류를 카운팅한다. 이를 기반으로 슬라이딩 윈..
[BOJ/Java] 2565. 전깃줄https://www.acmicpc.net/problem/2565문제 해석문제는 주어진 전깃줄이 교차하지 않도록 최소 몇 개의 전깃줄을 제거해야 하는지를 묻고 있다. 이 문제는 동적 계획법을 이용한 최장 증가 부분 수열(LIS, Longest Increasing Subsequence) 문제의 변형으로 볼 수 있다. A와 B 두 전봇대에 연결된 전깃줄의 위치가 주어지며, 각 전깃줄은 A전봇대의 특정 위치에서 B전봇대의 특정 위치로 연결된다.풀이 과정주어진 입력으로부터 전깃줄 정보를 배열에 저장하고, A 전봇대에 대해 오름차순 정렬을 실시한다. 이후, B 전봇대의 위치를 기준으로 LIS를 계산하여, 교차하지 않는 최대 전깃줄 수를 찾는다. LIS의 길이가 교차하지 않는 최..
[SWEA/Java] 1249. 보급로 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com문제 해석전쟁 피해 지역에서 보급로를 복구하는 작업을 수행해야 한다. 각 지점의 복구 시간이 0부터 9까지의 숫자로 주어지며, 지도는 N x N 격자 형태로 구성되어 있다. 시작점에서 출발하여 종점까지 이동하면서 발생하는 총 복구 시간을 최소화하는 경로를 찾는 것이 목표이다. 이동은 상하좌우로만 가능하다.풀이 과정이 문제는 Dijkstra 알고리즘을 적용하여 해결하였다. 이 알고리즘은 시작 정점으로부터 다른 모든 정점까지의 최단 경로를 찾는 데 사용되며, 각 정점의 가중치가 복구 시간에 해당한다. 자료 구조: Point 클래스를 ..
[Softeer/Java] 6248. 출퇴근길 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai문제 해석동환이는 자동차로 출퇴근을 하면서 가끔 길을 바꾸어 다니며 새로운 동네를 발견하는 것을 즐긴다. 이 문제에서는 동환이의 출퇴근길을 단방향 그래프로 나타내어, S에서 T로의 출근길과 T에서 S로의 퇴근길에 모두 방문할 수 있는 동네(정점)의 개수를 찾는다. 각 정점은 동네를, 간선은 도로를 의미하며, 각 도로는 일방통행이다. 문제는 출퇴근길에서 공통적으로 방문 가능한 정점을 찾는 것에 초점을 맞추어 있다.풀이 과정그래프 구성: n개의 정점과 m개의 일방통행 간선 정보를 입력받아 그래프를 구성한다. 또한, 각 정점에서 출발하는 간선 리스트와 각 정점으로 도착하는 간선 리스트를 각각 관리..
[Softeer/Java] 6293. 징검다리 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai문제 해석남북으로 흐르는 개울에 서쪽에서 동쪽으로 높이가 다른 돌들이 일렬로 놓여 있다. 이때, 철수는 서쪽에서 시작하여 동쪽으로 갈 때, 높이가 점점 증가하는 순서로만 돌을 밟고 건너가려고 한다. 주어진 돌의 높이에 따라 철수가 밟을 수 있는 돌의 최대 개수를 구하는 문제이다.풀이 과정문제는 "가장 긴 증가하는 부분 수열(Longest Increasing Subsequence, LIS)" 문제의 일종이다. 주어진 수열에서 가능한 한 길게 증가하는 부분 수열을 찾아야 한다.이 문제를 해결하기 위해 동적 프로그래밍(Dynamic Programming)을 사용하였다. dp[i]는 i번째 돌까지 ..