백준 2239 스도쿠 - JAVA
·
알고리즘/백준
2239 문제 링크https://www.acmicpc.net/problem/2239 문제 설명 입출력 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475import java.io.*; public class Main {    static int[][] sudoku;    static boolean[][][] visit;    static boolean success;    public static void main(String[] args) throws IOException {        Buffer..
객체 지향 프로그래밍(OOP)의 특징 4가지
·
CS 스터디/CS - JAVA
객체 지향 프로그래밍이란?객체 지향 프로그래밍(Object-Oriented-Programming)은 프로그램을 '객체'라는 독립적인 단위로 나누어 프로그래밍하는 방식입니다. 각 객체는 데이터와 동작을 하나로 묶어, 서로 간의 상호작용을 통해 프로그램을 구성합니다. 이러한 특성 덕분에 객체 지향 프로그래밍은 코드의 재사용성, 유지보수 용이성, 확장성 등을 높이는 데 유리합니다. 그럼 객체 지향 프로그래밍의 핵심적인 4가지 특징에 대해 적용된 코드와 그렇지 않은 코드를 비교해가며 살펴보겠습니다. 1. 캡슐화 ( Encapsulation )캡슐화란 속성과 메서드를 하나의 단위로 묶고, 해당 데이터에 대한 외부의 직접적인 접근을 차단하며 정보 은닉을 통해 시스템의 안정성과 유지보수를 높이는 개념입니다. 쉽게 말..
프로그래머스 [ 소수 찾기 / Lv2 ] - JAVA
·
알고리즘/프로그래머스
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  문제 설명한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항numbers는 길이 1 이상 7 이하인 문자열입니다.numbers는 0~9까지 숫자만으로 이루어져 있습니다."013"은 0..
프로그래머스 [ 최소직사각형 / Lv1 ] - JAVA
·
알고리즘/프로그래머스
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다.아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다.가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의..
JAVA의 실행 과정
·
CS 스터디/CS - JAVA
JAVA의 실행 과정 - [ 다이어그램 ]글을 읽기 앞서 그림을 보면 이해하기 편하므로, 다이어그램을 보면서 java파일이 어떻게 프로그램 동작으로 이어지는지 살펴보겠습니다.자바 컴파일러( javac )가 작성된 소스코드를 바이트 코드로 변환시킵니다.클래스 로더가 바이트 코드를 JVM의 Runtime Data Area의 메서드 영역으로 올립니다.Execution Engine의 Interpreter와 JIT compiler를 통해 바이트코드를 기계어로 변환해 프로그램을 실행합니다. 주요 개념 정리1. JAVA의 바이트 코드 실행 방식자바는 컴파일 방식과 인터프리터 방식 둘 다 사용합니다.컴파일 방식 : 자바 컴파일러(javac)는 소스코드(*.java)를 자바 바이트코드(*.class)로 변환시킵니다.인터..
백준 15681 트리와 쿼리 - JAVA
·
알고리즘/백준
15681 문제 링크https://www.acmicpc.net/problem/15681 문제 설명 입출력 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152import java.io.*;import java.util.*; public class Main {    private static ListListInteger>> list = new ArrayList>();        public static void main(String[] args) throws IOException {        BufferedReader br = new BufferedReader(new InputSt..
백준 1197 최소 스패닝 트리 - JAVA
·
알고리즘/백준
1197 문제 링크https://www.acmicpc.net/problem/1197 문제 설명 입출력 코드1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253import java.io.*;import java.util.*; public class Main {    static int N, M;    static boolean[] visit;    static Listint[]>[] list;    public static void main(String[] args) throws IOException {        BufferedReader br = new BufferedReader(..
백준 9465 스티커 - JAVA
·
알고리즘/백준
9465 문제 링크https://www.acmicpc.net/problem/9465 문제 설명 입출력 코드123456789101112131415161718192021222324252627282930313233343536373839import java.io.*;import java.util.*; public class Main {    static int sticker;    static int[][] arr;    static int[][] dp;    public static void main(String[] args) throws IOException {        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  ..
백준 14502 연구소 - JAVA
·
알고리즘/백준
14502 문제 링크https://www.acmicpc.net/problem/14502 문제 설명 입출력 코드123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475import java.io.*;import java.util.*; public class Main {    static int N, M;    static int[][] arr;    static Listint[]> zero = new ArrayList>();    static Listint[]> virus = new ArrayList>();    ..
백준 2206 벽 부수고 이동하기 - JAVA
·
알고리즘/백준
2206 문제 링크https://www.acmicpc.net/problem/2206 문제 설명 입출력 코드12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273import java.io.*;import java.util.*; public class Main {    static int N, M;    static int[][] arr;    static boolean[][][] visit;    static int[] dx = {0, 0, -1, 1};    static int[] dy = {1, -1, 0, 0};..