목록전체 글 (753)
쌓고 쌓다
https://www.acmicpc.net/problem/2304 2304번: 창고 다각형 첫 줄에는 기둥의 개수를 나타내는 정수 N이 주어진다. N은 1 이상 1,000 이하이다. 그 다음 N 개의 줄에는 각 줄에 각 기둥의 왼쪽 면의 위치를 나타내는 정수 L과 높이를 나타내는 정수 H가 한 개의 www.acmicpc.net #include #include using namespace std; int N; int max_pos, max_h; // 최대 높이의 위치와 높이 int arr[1001]; int res = 0 int main(void) { int L, H; cin >> N; for (int i = 0; i > L >> H; arr[L] = H; if (max_h ..
https://www.acmicpc.net/problem/1269 1269번: 대칭 차집합 첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어 www.acmicpc.net #include #include using namespace std; map m; int N,M; int num; int main(void) { cin >> N >> M; for (int i = 0; i > num; if (m[num] == true) // 이미 존재하면 map에서 제거를 한다. m.erase(num); else // 존재 안하면 추가를 해준..
https://www.acmicpc.net/problem/15903 15903번: 카드 합체 놀이 첫 번째 줄에 카드의 개수를 나타내는 수 n(2 ≤ n ≤ 1,000)과 카드 합체를 몇 번 하는지를 나타내는 수 m(0 ≤ m ≤ 15×n)이 주어진다. 두 번째 줄에 맨 처음 카드의 상태를 나타내는 n개의 자연수 a1, www.acmicpc.net #include #include using namespace std; int main(void) { int N, M; long long int res = 0; priority_queue pq; cin >> N >> M; for (int i = 0; i > num; pq.push(num); } for (int i =..
https://www.acmicpc.net/problem/11003 11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net #include #include #include #include using namespace std; vector v; deque dq; int N, L; int main(void) { cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); int num; cin >> N >> L; for (int i = 0; i < N;..
인터페이스(interface) 인터페이스는 interface 키워드를 사용하여 일종의 규격을 정의하는 것이다. interface Animal { public static final int age = 999; // 상수 필드, public static final 생략 가능 public abstract void Sound(); // 추상 메소드, public abstract 생략 가능 public default void Print() // default 메소드, public 생략 가능 { System.out.println("default 메소드"); } } 인터페이스의 구성 멤버 변수(필드)는 만들 수 없다. default, private, static 메소드들은 모두 인터페이스에 코드가 작성되어 있어야 한..
https://www.acmicpc.net/problem/1275 1275번: 커피숍2 첫째 줄에 수의 개수 N과 턴의 개수 Q가 주어진다.(1 ≤ N, Q ≤ 100,000) 둘째 줄에는 처음 배열에 들어가 있는 정수 N개가 주어진다. 세 번째 줄에서 Q+2번째 줄까지는 x y a b의 형식으로 x~y까지의 합 www.acmicpc.net #include #include using namespace std; vector v; int N, Q; long long Tree[400001]; long long init(int start,int end,int node) { if (start == end) return Tree[node] = v[start]; int mid = (start + end) / 2; r..
추상 메소드 추상 메소드는 선언은 되어 있으니 코드가 구현되어 있지 않는 껍데기만 있는 메소드이다. 상속에서 슈퍼 클래스로 사용되며 추상 메소드를 작성하기 위해 abstract 키워드를 사용한다. public abstract String getName(); // 추상 메소드 public abstract setName(String str); // 추상 메소드 public abstract String fail() // 컴파일 에러 발생 ( 코드 작성이 이루어 지면 안됨 ) { return "추상 클래스 실패"; } 추상 클래스가 되는 방법 1. 추상 메소드를 포함하는 클래스 abstract class Person{ // 추상 클래스 선언 abstract public void Speak(); // 추상 메소드..
https://www.acmicpc.net/problem/2776 2776번: 암기왕 연종이는 엄청난 기억력을 가지고 있다. 그래서 하루 동안 본 정수들을 모두 기억 할 수 있다. 하지만 이를 믿을 수 없는 동규는 그의 기억력을 시험해 보기로 한다. 동규는 연종을 따라 다니며, www.acmicpc.net #include #include using namespace std; map m; int T, N, M; int main(void) { cin >> T; cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); while (T--) { int num; m.clear(); cin >> N; for (int i = 0; i > num;..