Problem Solving 7

[백준/골드5] 1759번 - 암호 만들기 (Java/자바)

1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 암호만들기 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 2 초 128 MB 48181 22647 15700 44.602% 문제 바로 어제 최백준 조교가 방 열쇠를 주머니에 넣은 채 깜빡하고 서울로 가 버리는 황당한 상황에 직면한 조교들은, 702호에 새로운 보안 시스템을 설치하기로 하였다. 이 보안 시스템은 열쇠가 아닌 암호로 동작하게 되어 있는 시스템이다. 암호는 서로 다른 L개의 알파벳 소문자들로 구성되며 최소 한 개의 모음(a, e, i, o, u)과..

[백준] 21922번 - 학부 연구생 민상 (Java/자바)

21922번: 학부 연구생 민상 첫 번째 줄에는 연구실의 크기가 세로 $N(1 \le N \le 2,000)$, 가로 $M(1 \le M \le 2,000)$ 순으로 주어진다. 두 번째 줄부터 $N + 1$ 줄까지 연구실 내부 구조 정보를 알려주는 값 $M$개가 주어진다. $1,2,3,4$ www.acmicpc.net 학부 연구생 민상 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 512 MB 772 204 125 24.131% 문제 학부 연구생으로 새로 연구실에 들어온 민상이는 사용할 자리를 정하려고 한다. 연구실은 격자 모양으로 되어있고 에어컨에서 바람이 상,하,좌,우 4방향으로 분다. 물론 에어컨이 위치한 곳에도 바람이 분다. 민상이는 더위를 많이 타서 에어컨 바람이 지나가는 곳 중..

[백준] 2583번 - 영역 구하기 (Java/자바)

2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 바이러스 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 128 MB 88100 41450 28192 45.555% 문제 눈금의 간격이 1인 M×N(M,N≤100)크기의 모눈종이가 있다. 이 모눈종이 위에 눈금에 맞추어 K개의 직사각형을 그릴 때, 이들 K개의 직사각형의 내부를 제외한 나머지 부분이 몇 개의 분리된 영역으로 나누어진다. 예를 들어 M=5, N=7 인 모눈종이 위에 과 같이 직사각형 3개를 그렸다면, 그 나머지 영..

[백준] 2606번 - 바이러스 (Java/자바)

2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 바이러스 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 1 초 128 MB 88100 41450 28192 45.555% 문제 신종 바이러스인 웜 바이러스는 네트워크를 통해 전파된다. 한 컴퓨터가 웜 바이러스에 걸리면 그 컴퓨터와 네트워크 상에서 연결되어 있는 모든 컴퓨터는 웜 바이러스에 걸리게 된다. 예를 들어 7대의 컴퓨터가 과 같이 네트워크 상에서 연결되어 있다고 하자. 1번 컴퓨터가 웜 바이러스에 걸리면 웜 바이러스는 2번과 5번 컴퓨터를 거쳐 3번과..

[백준] 1780번 - 종이의 개수 (자바 /Java)

https://www.acmicpc.net/problem/1780 1780번: 종이의 개수 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수 www.acmicpc.net 종이의 개수 시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율 2 초 256 MB 24882 14709 11083 58.918% 문제 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수로 되어 있다면 이 종이를 그대로 사용한다. (..

[자바 자료구조] 객체지향, 상속, 클래스, 오버라이드

아래와 같은 코드들이 있다. int i = 10;// 첫째줄 short j;// 둘째줄 long k;// 셋째줄 Student S = new Student(); 첫줄, 둘째줄, 그리고 셋째줄은 4byte, 2byte, 그리고 8 byte만큼의 공간을 차지한다. 그렇다면 Student라는 객체로 선언된 s는 얼만큼의 메모리 공간을 차지할까?​ JVM은 특정 객체를 선언받았을때, 객체의 크기와 관련없이 s라는 4byte의 공간을 만든다. 그리고 이 공간은 다시 heap에 있는 실제 Student만큼의 객체 크기 만큼 할당한 부분을 가리킨다. 도식화한 모습은 다음과 같다. 아래와 같은 Person이라는 클래스와 Student라는 클래스가 있다고 하자 Person() { id name email } Studen..

[자바 자료구조] Complexity, 시간복잡도

본 게시물은 아래 인강의 내용을 기반합니다. 네이버에서 제공하는 고퀄리티 강의인데다 무려 무료..!라 저처럼 공부하고자 하는 사람들에게 강추합니다 https://www.boostcourse.org/cs204 [Complexity] 시간복잡도, 복잡도의 몇가지 준수 사항이 있으며 이는 아래와 같음 1. input 은 0보다 크거나 같다, 음의 입력값에 대한 시간복잡도는 고려하지 않는다 ​ 2. function은 input이 커지면 커질수록 더많은 작업(work)을 한다 → 더 큰 input이 있으면 있을수록 더 많은 work를 하는 상승 곡선의 형태를 띔을 의미 ​ 3. 알고리즘의 복잡도의 모든 상수는 제거 한다 → 3n = n = 10000n 모두 같은 복잡도로 판단한다 ​ 4. 우리는 가장 큰 숫자(복..