분류 전체보기

알고리즘/자바

[백준 알고리즘]23309번 자바(Java) 철도공사

문제 연세대학교가 위치한 신촌역이 속한 2호선은 그림과 같이 N개의 역이 원형으로 연결되어 있다. 각 역은 고유 번호가 할당돼 있으며 역들의 고유 번호는 서로 다르다. 그리고 특정 역의 다음 역은 시계 방향으로 인접한 역을 의미하고, 이전 역은 반시계 방향으로 인접한 역을 의미한다. 2호선은 지하철 노선들 중 유일한 흑자 노선이다. 때문에 2호선 공사 자금이 넉넉하기에 M번의 공사를 거치려고 한다. 각 공사는 다음 4가지 중 하나를 시행한다. 고유 번호 i를 가진 역의 다음 역의 고유 번호를 출력하고, 그 사이에 고유 번호 j인 역을 설립한다. 고유 번호 i를 가진 역의 이전 역의 고유 번호를 출력하고, 그 사이에 고유 번호 j인 역을 설립한다. 고유 번호 i를 가진 역의 다음 역을 폐쇄하고 그 역의 고..

데이터베이스/SQL

[SQL] 데이터 모델링의 이해

목표 데이터 모델링의 과정을 이해하고 습득하기 학습할 것 데이터 모델의 이해 엔티티 속성 관계 식별자 데이터 모델링 현실 세계를 형식에 맞추어 추상화하여 데이터 모델을 만드는 과정이다. 복잡한 현실 개체들을 제한된 표기법으로 이해하기 쉽도록 단순화해준다. 데이터를 효율적으로 관리하고 조작하기 위해 사용하며, 데이터베이스 설계나 소프트웨어 개발에서 활용된다. 모델링 특징 추상화: 현실세계를 일정한 형식에 맞추어 표현한다. 단순화: 복잡한 현실 세계를 간결하고 명확하게 표현한다. 명확성(정확성): 애매모호함을 배제하고 누구나 이해 가능하도록 관계가 명확하게 정의된다. 일관성: 모델의 구성요소들이 모순없이 일관되어야 한다. 유연성: 데이터 변경이나 확장에 대해 유연성이 있어야한다. 데이터 모델의 기능 가시화:..

자바(Java)

[자바] JVM, 자바 실행방법

목표자바 소스파일을 JVM으로 실행하는 과정 이해하기학습할 것JVM이란 무엇인가컴파일 하는 방법실행하는 방법바이트코드란 무엇인가JIT 컴파일러란 무엇이며 어떻게 동작하는지JVM 구성요소JDK와 JRE의 차이  JVM JVM의미: Java Virtual Machine의 줄임말이며 자바 가상 컴퓨터정도로 이해하면 편하다.여러 운영체제에서 사용가능한 애뮬레이터이며 자바의 명령을 운영체제에 맞게 변환해준다.필요성: 자바는 운영체제에 독립적이다, 그렇기에 여러 운영체제에 사용할려면 운영체제에 종속적인JVM을 사용해야한다. 사용하게되면 자바의 파일 수정없이 어디서든지 그 파일을 실행해볼수있다.  컴파일과 실행방법컴파일의 의미: 소스프로그램 ⇒ 기계어변환하는 과정(바이트 코드르 만드는 과정)을 말한다.java.exe..

알고리즘/자바

[백준 알고리즘] 12904번 자바(Java) A와 B

문제 수빈이는 A와 B로만 이루어진 영어 단어가 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수빈이는 간단한 게임을 만들기로 했다. 두 문자열 S와 T가 주어졌을 때, S를 T로 바꾸는 게임이다. 문자열을 바꿀 때는 다음과 같은 두 가지 연산만 가능하다. 문자열의 뒤에 A를 추가한다. 문자열을 뒤집고 뒤에 B를 추가한다. 주어진 조건을 이용해서 S를 T로 만들 수 있는지 없는지 알아내는 프로그램을 작성하시오. 입력 첫째 줄에 S가 둘째 줄에 T가 주어진다. (1 ≤ S의 길이 ≤ 999, 2 ≤ T의 길이 ≤ 1000, S의 길이 < T의 길이) 출력 S를 T로 바꿀..

알고리즘/자바

[백준 알고리즘] 18110번 자바(Java) solved.ac

문제 solved.ac는 Sogang ICPC Team 학회원들의 알고리즘 공부에 도움을 주고자 만든 서비스이다. 지금은 서강대뿐만 아니라 수많은 사람들이 solved.ac의 도움을 받아 알고리즘 공부를 하고 있다. ICPC Team은 백준 온라인 저지에서 문제풀이를 연습하는데, 백준 온라인 저지의 문제들에는 난이도 표기가 없어서, 지금까지는 다양한 문제를 풀어 보고 싶더라도 난이도를 가늠하기 어려워 무슨 문제를 풀어야 할지 판단하기 곤란했기 때문에 solved.ac가 만들어졌다. solved.ac가 생긴 이후 전국에서 200명 이상의 기여자 분들께서 소중한 난이도 의견을 공유해 주셨고, 지금은 약 7,000문제에 난이도 표기가 붙게 되었다. 어떤 문제의 난이도는 그 문제를 푼 사람들이 제출한 난이도 의..

알고리즘/자바

[백준 알고리즘] 2178번자바(Java) 미로탐색 BFS

문제 N×M크기의 배열로 표현되는 미로가 있다. 1 0 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오. 한 칸에서 다른 칸으로 이동할 때, 서로 인접한 칸으로만 이동할 수 있다. 위의 예에서는 15칸을 지나야 (N, M)의 위치로 이동할 수 있다. 칸을 셀 때에는 시작 위치와 도착 위치도 포함한다. 입력 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력..

알고리즘/자바

[백준 알고리즘] 10866번 자바(Java) 덱

문제 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. pop_back: 덱의 가장 뒤에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 덱에 들어있는 정수의 개수를 출력한다. empty: 덱이 비어있으면 1을, 아니면 0을 출력한다. front: 덱의 가장 앞에 있는 정수를 출력한다. 만약 덱에 들어있는 정수가 없는 경우에..

데이터베이스/SQL

데이터베이스 개념요약(데이터베이스, 관계형데이터베이스)

데이터베이스, 관계형 데이터베이스 데이터베이스 ○설명 조작가능한 데이터, 저장된 데이터의 모임 디스크에 저장됨 ○데이터베이스 관리 시스템 DBMS: 데이터베이스를 관리해주는 소프트웨어 시트템, 비쌈 ->필요한이유: 창고를 예시로 두면 잘 정리가 되어야 중간 관리인이 필요한 물건을 빨리 찾아준다 창고중간 관리인 = DBMS! DBMS가 제공하는 기능 정보를 표현 할 수 있는 틀 데이터의 공유기능: 공유함으로써 데이터 중복을 제거한다 ->데이터의 브릿지 해결(깃허브 그 데이터 충돌 해결하는거 생각하면 될듯) ex. int형 char형 충돌, 리시트 안에 항목다른거 충돌 동시성 문제 ->하나의 트랜잭션 이 동시에 실행될때 DBMS가 하나를 홀딩해서 문제없게 해줌 요약: 하이패스에 동시에 두대의 차가 들어오면 ..

알고리즘/자바

[백준 알고리즘] 10814번 자바(Java) 나이순 정렬

문제 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 온라인 저지 회원의 수 N이 주어진다. (1 ≤ N ≤ 100,000) 둘째 줄부터 N개의 줄에는 각 회원의 나이와 이름이 공백으로 구분되어 주어진다. 나이는 1보다 크거나 같으며, 200보다 작거나 같은 정수이고, 이름은 알파벳 대소문자로 이루어져 있고, 길이가 100보다 작거나 같은 문자열이다. 입력은 가입한 순서로 주어진다. 출력 첫째 줄부터 총 N개의 줄에 걸쳐 온라인 저지 회원을 나이 순, 나이가 같으면 가입한 순으로 한 줄에 한 명씩 나이와 이름을 공백으로 구분해 출력한다. 풀이..

알고리즘/자바

[백준 알고리즘] 11660번 자바(Java) 구간 합 구하기

문제 N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 ..

Ash_jisu
'분류 전체보기' 카테고리의 글 목록 (13 Page)