개발새발
close
프로필 배경
프로필 로고

개발새발

  • 분류 전체보기
    • 학습 노트
      • Spring
      • Docker
      • React
      • Security
      • Web & Network
      • DevOps
      • Software Architecture
    • 프로젝트 개발 일지
      • SayBridge
    • 알고리즘
      • 개념 & 이론
      • 구현 & 시뮬레이션
      • BFS & DFS
      • 완전탐색 & 백트래킹
      • 다익스트라
      • DP
      • 슬라이딩 윈도우
      • 투 포인터
      • 위상정렬
      • 그리디
      • 고급 그래프
    • 회고
  • 홈
  • 태그
  • 방명록

최소 직사각형

문제 설명 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 명함 번호 가로 길이 세로 길이1 60 502 30 703 60 304 80 40가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 ..

  • format_list_bulleted 알고리즘/완전탐색 & 백트래킹
  • · 2026. 7. 1.
  • textsms

이상한 진수 2

0 이상의 정수 N을 2진법으로 나타낸 뒤, 그 숫자들 중 정확히 한 숫자만을 바꾼 숫자 a가 주어졌을 때, 가능한 숫자 N 중 최댓값을 찾는 프로그램을 작성해보세요. 내 풀이) - 최댓값을 찾는 문제라서 0이 있을 때, 0의 위치를 왼쪽부터 찾아서 해당 위치를 1로 바꾼 후 최댓값을 선택 - 전부 1로 되어있다면 제일 오른쪽이 0일 때 최댓값이라 정수 N에서 1을 빼준 값을 최댓값으로 선택import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String a = sc.next(); boolean z..

  • format_list_bulleted 알고리즘/완전탐색 & 백트래킹
  • · 2026. 6. 30.
  • textsms

[BOJ] 16987. 계란으로 계란치기

문제원래 프로그래머의 기본 소양은 팔굽혀펴기를 단 한 개도 할 수 없는 것이라고 하지만 인범이는 3대 500을 넘기는 몇 안되는 프로그래머 중 한 명이다. 인범이는 BOJ에서 틀린 제출을 할 때마다 턱걸이를 5회 하는 기적의 운동 루틴을 통해 뇌와 근육을 동시에 단련한다. 근육을 단련할 때 식단이 정말로 중요하다는 것을 아는 인범이는 탄수화물이 많은 밥이나 빵 따위의 아침 식사를 대신해 단백질이 많은 계란찜을 해먹는다. 계란찜을 먹기 위해서는 계란을 깨야 하는데, 인범이는 힘이 너무 넘치는 나머지 부엌의 대리석을 이용해 계란을 깨면 늘 껍데기가 산산조각나 뒷처리가 너무 어렵게 되곤 한다. 어떻게 하면 계란을 조심스럽게 깰 수 있을까 고민하던 인범이에게 유현이는 굉장히 좋은 해결책을 알려주었다. 바로 계란..

  • format_list_bulleted 알고리즘/완전탐색 & 백트래킹
  • · 2026. 3. 31.
  • textsms

[BOJ] 15686. 치킨 배달

문제크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸, 왼쪽에서부터 c번째 칸을 의미한다. r과 c는 1부터 시작한다.이 도시에 사는 사람들은 치킨을 매우 좋아한다. 따라서, 사람들은 "치킨 거리"라는 말을 주로 사용한다. 치킨 거리는 집과 가장 가까운 치킨집 사이의 거리이다. 즉, 치킨 거리는 집을 기준으로 정해지며, 각각의 집은 치킨 거리를 가지고 있다. 도시의 치킨 거리는 모든 집의 치킨 거리의 합이다.임의의 두 칸 (r1, c1)과 (r2, c2) 사이의 거리는 |r1-r2| + |c1-c2|로 구한다.예를 들어, 아래와 같은 지도를 갖..

  • format_list_bulleted 알고리즘/BFS & DFS
  • · 2026. 3. 30.
  • textsms

[BOJ] 2239. 스도쿠

문제스도쿠는 매우 간단한 숫자 퍼즐이다. 9×9 크기의 보드가 있을 때, 각 행과 각 열, 그리고 9개의 3×3 크기의 보드에 1부터 9까지의 숫자가 중복 없이 나타나도록 보드를 채우면 된다. 예를 들어 다음을 보자.위 그림은 참 잘도 스도쿠 퍼즐을 푼 경우이다. 각 행에 1부터 9까지의 숫자가 중복 없이 나오고, 각 열에 1부터 9까지의 숫자가 중복 없이 나오고, 각 3×3짜리 사각형(9개이며, 위에서 색깔로 표시되었다)에 1부터 9까지의 숫자가 중복 없이 나오기 때문이다.하다 만 스도쿠 퍼즐이 주어졌을 때, 마저 끝내는 프로그램을 작성하시오.입력9개의 줄에 9개의 숫자로 보드가 입력된다. 아직 숫자가 채워지지 않은 칸에는 0이 주어진다.출력9개의 줄에 9개의 숫자로 답을 출력한다. 답이 여러 개 있다..

  • format_list_bulleted 알고리즘/완전탐색 & 백트래킹
  • · 2026. 3. 23.
  • textsms

[BOJ] 1967. 트리의 지름

문제트리(tree)는 사이클이 없는 무방향 그래프이다. 트리에서는 어떤 두 노드를 선택해도 둘 사이에 경로가 항상 하나만 존재하게 된다. 트리에서 어떤 두 노드를 선택해서 양쪽으로 쫙 당길 때, 가장 길게 늘어나는 경우가 있을 것이다. 이럴 때 트리의 모든 노드들은 이 두 노드를 지름의 끝 점으로 하는 원 안에 들어가게 된다.이런 두 노드 사이의 경로의 길이를 트리의 지름이라고 한다. 정확히 정의하자면 트리에 존재하는 모든 경로들 중에서 가장 긴 것의 길이를 말한다.입력으로 루트가 있는 트리를 가중치가 있는 간선들로 줄 때, 트리의 지름을 구해서 출력하는 프로그램을 작성하시오. 아래와 같은 트리가 주어진다면 트리의 지름은 45가 된다.트리의 노드는 1부터 n까지 번호가 매겨져 있다.입력파일의 첫 번째 줄..

  • format_list_bulleted 알고리즘/BFS & DFS
  • · 2026. 3. 23.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 8
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기
    • 학습 노트
      • Spring
      • Docker
      • React
      • Security
      • Web & Network
      • DevOps
      • Software Architecture
    • 프로젝트 개발 일지
      • SayBridge
    • 알고리즘
      • 개념 & 이론
      • 구현 & 시뮬레이션
      • BFS & DFS
      • 완전탐색 & 백트래킹
      • 다익스트라
      • DP
      • 슬라이딩 윈도우
      • 투 포인터
      • 위상정렬
      • 그리디
      • 고급 그래프
    • 회고
최근 글
인기 글
최근 댓글
태그
  • #lsp
  • #ISP
  • #객체지향5원칙
  • #solid
  • #DIP
  • #객체지향원리
  • #OCP
  • #SRP
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바