본문 바로가기

분류 전체보기43

[BOJ] 5373 : 큐빙 [P5] https://www.acmicpc.net/problem/5373 5373번: 큐빙 각 테스트 케이스에 대해서 큐브를 모두 돌린 후의 윗 면의 색상을 출력한다. 첫 번째 줄에는 뒷 면과 접하는 칸의 색을 출력하고, 두 번째, 세 번째 줄은 순서대로 출력하면 된다. 흰색은 w, 노란 www.acmicpc.net [문제] 루빅스 큐브는 삼차원 퍼즐이다. 보통 루빅스 큐브는 3×3×3개의 작은 정육면체로 이루어져 있다. 퍼즐을 풀려면 각 면에 있는 아홉 개의 작은 정육면체의 색이 동일해야 한다. 큐브는 각 면을 양방향으로 90도 만큼 돌릴 수 있도록 만들어져 있다. 회전이 마친 이후에는, 다른 면을 돌릴 수 있다. 이렇게 큐브의 서로 다른 면을 돌리다 보면, 색을 섞을 수 있다. 이 문제에서는 루빅스 큐브가 .. 2024. 3. 10.
[BOJ] 7576 : 토마토 [G5] https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net [문제] 철수의 토마토 농장에서는 토마토를 보관하는 큰 창고를 가지고 있다. 토마토는 아래의 그림과 같이 격자 모양 상자의 칸에 하나씩 넣어서 창고에 보관한다. 창고에 보관되는 토마토들 중에는 잘 익은 것도 있지만, 아직 익지 않은 토마토들도 있을 수 있다. 보관 후 하루가 지나면, 익은 토마토들의 인접한 곳에 있는 익지 않은 토마토들은 익은 토마토의 영향을 받아 익게 된다. 하나.. 2024. 3. 9.
[BOJ] 10972 : 다음 순열 [S3] https://www.acmicpc.net/problem/10972 10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net [문제] 1부터 N까지의 수로 이루어진 순열이 있다. 이때, 사전순으로 다음에 오는 순열을 구하는 프로그램을 작성하시오. 사전 순으로 가장 앞서는 순열은 오름차순으로 이루어진 순열이고, 가장 마지막에 오는 순열은 내림차순으로 이루어진 순열이다. N = 3인 경우에 사전순으로 순열을 나열하면 다음과 같다. 1, 2, 3 1, 3, 2 2, 1, 3 2, 3, 1 3, 1, 2 3, 2, 1 [입력] 첫째 줄에 N(1 ≤ N ≤ 10,000)이 주어진다. 둘째.. 2024. 2. 13.
[JAVA] 객체지향 언어의 특징 & 캡슐화 & 상속 객체지향 언어의 특징 객체지향 언어의 특징 - A PIE 그 중 캡슐화와 상속에 대해 좀 더 자세히 알아보자. Encapsulation(데이터 은닉과 보호) 누군가가 내 정보를 마음대로 바꿀 수 있다면 => 개인정보의 탈취 위험도 있고, 시스템에 심각한 오류를 줄 가능성도 있다! 따라서 정보를 보호하기 위해서는 변수는 private로 접근제한자를 설정하여 외부에서의 접근을 막고 공개되는 메서드를 통한 접근 통로를 마련하는 것이 좋다 (setter / getter) 객체의 생성 제어와 Singleton 디자인 패턴 변수를 private로 설정하여 외부의 접근을 막듯이, 객체의 생성을 제한해야 한다면 어떻게 해야 할까? 객체의 생성을 제한해야 하는 이유 여러 개의 객체가 필요 없는 경우 객체를 구별할 필요가.. 2024. 2. 12.