크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸, 왼쪽에서부터 c번째 칸을 의미한다. r과 c는 1부터
문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다.먼저, 문자열 S는 아래와과 같은 규칙을 지킨다.알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('<', '>')로만 이루어져 있다.문자열의 시작과 끝은 공백이 아니
N명의 사람들은 매일 아침 한 줄로 선다. 이 사람들은 자리를 마음대로 서지 못하고 오민식의 지시대로 선다.어느 날 사람들은 오민식이 사람들이 줄 서는 위치를 기록해 놓는다는 것을 알았다. 그리고 아침에 자기가 기록해 놓은 것과 사람들이 줄을 선 위치가 맞는지 확인한다
static 키워드의 특징은 다음과 같다. static은 변수 앞에 쓸 수도, 메소드 앞에 쓸 수도 있다.이렇게 생성된 정적멤버들은 다음과 같은 특징을 지닌다.메모리에 고정적으로 할당된다.객체 생성 없이 사용할 수 있다.프로그램이 시작되면 메모리의 static 영역에
프로세서 : 프로세스를 실행시켜주는 하드웨어 유닛 (레지스터, 산술 논리 장치 등)프로세스 : 메모리에 적재되어 프로세서에 의해 실행중인 프로그램 멀티 프로세스 : 프로세스가 메모리에 여러개 올라가 있는 상태 스레드 : 어떤 프로세스 내에서 실행되는 흐름의 단위 멀티
문제 풀이 이 부분을 봤을 때 rcx가 19가 되면 아래의 jg end를 실행하고 아니라면 다시 1로 돌아가 반복하는 형태이다. BYTE는 1바이트를 말한다. WORD는 2바이트, DWORD라면 4바이트를 가져온다. 1바이트란 8Bit를 말하는데, 0x00로 표현
자바는 데이터베이스와 연결해서 데이터 입출력 작업을 할 수 있도록 JDBC(JavaDatabaseConnectivity)라이브러리를 제공한다.JDBC는 데이터베이스 관리시스템 (DBMS)의 종류와 상관없이 동일하게 사용할 수 있는 클래스와 인터페이스로 구성되어있다.DB
자바에서 네트워크 프로토콜을 다루는 법을 소개한다.우선 집 주소라고 할 수 있는 IP를 얻는 방법은 다음과 같다.java.net의 InetAddress를 통해 알아 낼 수 있다.IP 주소로 프로그램들이 통신할 때는 약속된 데이터 전송 규약이 있다. 이것을 전송용 프로토
데이터는 키보드를 통해 입력될 수도 있고, 파일 또는 프로그램으로부터 입력될 수도 있다.반대로 데이터는 모니터를 통해 출력될 수도 있고 파일에 저장되거나 다른 프로그램으로 전송될 수 있다. 이것을 총칭해서 데이터 입출력이라고 한다.자바는 입력 스트림과 출력 스트림을 통
지금까지 컬렉션 및 배열에 저장된 요소를 반복 처리하기 위해 for문이나 iterator를 썼다. java8 부터는 또 다른 방법으로 컬렉션 및 배열의 요소를 반복 처리하기 위해 Stream을 사용할 수 있다. 스트림은 요소들이 하나씩 흘러가면서 처리된다는 의미를 가지
프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다.또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포
함수형 프로그래밍에서 나온 기법으로 함수를 정의하고 함수를 데이터 처리부로 보내 데이터를 처리하는 기법을 말한다. 데이터 처리부는 데이터만 가지고 있을 뿐, 처리 방법이 정해져 있지 않아 외부에서 제공된 함수에 의존한다.람다식은 다음과 같이 쓸 수 있다.자바는 람다식을
운영체제는 실행 중인 프로그램을 프로세스(process)로 관리한다.멀티 태스킹은 두 가지 이상의 작업을 동시에 처리하는 것을 말하는데, 이 때 운영체제는 멀티 프로세스를 생성하여 처리한다. 하나의 프로세스에서 멀티 스레드를 이용하여 두 가지 이상의 작업을 처리할 수
자바 공식 문서이 모든 클래스를 알 필요는 없지만 자주 쓰는 것 위주로 정리하겠다.동등 비교를 할 때 쓰는 equals는 object의 소속이다.자바의 모든 클래스는 암묵적으로 java.lang.Object를 상속 받는다.그래서 모든 객체는 equals, hashCod
컴퓨터 하드웨어의 고장으로 인해 응용프로그램 실행 오류가 발생하는 것을 자바에서는 에러 라고 한다. 프로그램을 아무리 견고하게 만들어도 개발자는 이런 에러를 대처할 방법이 없다. 자바에는 에러 이외에 예외(Exception)이라고 불리우는 오류가 있다. 예외란 잘못된
인텔리제이에서 Jar 추출 하는 법대충 이렇게 추출할 코드를 만들고File -> Project Settings -> Artifacts 저기 + 표시 눌러주고 From module with depencies 눌러서 만들고 Apply그 후 Build -> Build Art
문제 링크중복으로 왔다 갔다 하는걸 어떻게 셀 수 있을까 생각하다가 자바의 컬렉션 프레임워크 중 중복을 허용하지 않는 Set이 있다는 것을 떠올렸다.(지금 좌표, 움직일 좌표) 이걸 Set에 넣으면 같은 곳을 또 방문했을 때는 중복 저장이 되지 않으므로 Set의 크기가
중첩 클래스란 클래스 내부에 선언한 클래스를 말한다.중첩 클래스를 사용하면 클래스의 멤버를 쉽게 사용할 수 있고 외부에는 중첩 관계 클래스를 감춤으로써 코드의 복잡성을 줄일 수 있다. 중첩 클래스는 선언하는 위치에 따라 두 가지로 분류된다. 클래스의 멤버러소 선언되는
인터페이스(Interface)는 다형성 구현의 주된 기술로 상속을 통한 다형성 구현보다 인터페이스를 활용하여 다형성을 구현하는 경우가 더 많다. 인터페이스의 사전적 정의는 두 장치를 연결하는 접속기로, 자바에서 인터페이스는 두 객체를 연결하는 역할을 한다. 객체 A가