[백준] 2011번 : 암호코드 (Java)
·
알고리즘 및 데이터 구조/백준
🔗 2011번 : 암호코드● Java 풀이● 시간 제한 2초● 메모리 제한 128 MB✅ 문제상근이와 선영이가 다른 사람들이 남매간의 대화를 듣는 것을 방지하기 위해서 대화를 서로 암호화 하기로 했다. 그래서 다음과 같은 대화를 했다.상근: 그냥 간단히 암호화 하자. A를 1이라고 하고, B는 2로, 그리고 Z는 26으로 하는거야.선영: 그럼 안돼. 만약, "BEAN"을 암호화하면 25114가 나오는데, 이걸 다시 글자로 바꾸는 방법은 여러 가지가 있어.상근: 그렇네. 25114를 다시 영어로 바꾸면, "BEAAD", "YAAD", "YAN", "YKD", "BEKD", "BEAN" 총 6가지가 나오는데, BEAN이 맞는 단어라는건 쉽게 알수 있잖아?선영: 예가 적절하지 않았네 ㅠㅠ 만약 내가 500자..
[백준] 14719번 : 빗물 (Java)
·
알고리즘 및 데이터 구조/백준
🔗 14719번 : 빗물● Java 풀이● 시간 제한 1초● 메모리 제한 256 MB✅ 문제2차원 세계에 블록이 쌓여있다. 비가 오면 블록 사이에 빗물이 고인다.비는 충분히 많이 온다. 고이는 빗물의 총량은 얼마일까?✅ 테스트 케이스// input4 83 0 1 2 1 2 3 4//answer9// input500 31 2 500// answer0// input500 5500 2 1 1 2//answer2// input500 40 2 1 500// answer1// input500 3500 2 500// answer498// input500 500500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 1 500 ..
[백준] 11000번 : 강의실 배정 (Java)
·
알고리즘 및 데이터 구조/백준
🔗 11000번 : 강의실 배정● Java 풀이● 시간 제한 1초● 메모리 제한 256 MB✅ 문제수강신청의 마스터 김종혜 선생님에게 새로운 과제가 주어졌다. 김종혜 선생님한테는 Si에 시작해서 Ti에 끝나는 N개의 수업이 주어지는데, 최소의 강의실을 사용해서 모든 수업을 가능하게 해야 한다. 참고로, 수업이 끝난 직후에 다음 수업을 시작할 수 있다. (즉, Ti ≤ Sj 일 경우 i 수업과 j 수업은 같이 들을 수 있다.)수강신청 대충한 게 찔리면, 선생님을 도와드리자!✅ 테스트 케이스/** 출처 (https://steady-coding.tistory.com/253) **/// input61 32 57 89 107 114 12// answer3✅ 풀이import java.io.*;import java..
[백준] 4386번 : 별자리 만들기 (Java)
·
알고리즘 및 데이터 구조/백준
🔗4386번 : 별자리 만들기● Java 풀이● 시간 제한 1초● 메모리 제한 128 MB✅ 문제도현이는 우주의 신이다. 이제 도현이는 아무렇게나 널브러져 있는 n개의 별들을 이어서 별자리를 하나 만들 것이다. 별자리의 조건은 다음과 같다.별자리를 이루는 선은 서로 다른 두 별을 일직선으로 이은 형태이다.모든 별들은 별자리 위의 선을 통해 서로 직/간접적으로 이어져 있어야 한다.별들이 2차원 평면 위에 놓여 있다. 선을 하나 이을 때마다 두 별 사이의 거리만큼의 비용이 든다고 할 때, 별자리를 만드는 최소 비용을 구하시오.✅ 테스트 케이스/** 출처 (https://www.acmicpc.net/board/view/82327) **/// input64 15 82 18 42 91 4// answer18.3..
비동기(Asynchronous) vs. 논블로킹(Non-Blocking)
·
개발자 커리어 및 교육/개발 지식
🔹 비동기 = 논블로킹?java 개발자로서 비동기와 논블로킹 처리를 접할 일이 크게 없다가, 최근 WebClient를 학습하며 둘의 차이에 대해 이해하게 되었다.비동기와 논블로킹이 같은 것인가? 라고 하면 당연히 아니지만, 엄연히 다른 것이냐고 해도 그것도 아니라고 볼 수 있다고 생각한다. 이를 알기 위해서는 각자의 처리 방식을 이해해야 한다.  위 사진은 IBM DeveloperWorks Library에서 제공한 Sync/Async와 Blocking/Non-Blocking의 구분이다.표를 보면 알 수 있듯이 (동기, 논블로킹)이나 (비동기, 블로킹) 방식 또한 존재할 수 있다는 것이다. 🔹 동기 (Synchronous) / 비동기 (Aynchronous)1. 동기 (Synchronous)동기 방식은..
[백준] 17135번 : 캐슬 디펜스 (Java)
·
알고리즘 및 데이터 구조/백준
🔗17135번 : 캐슬 디펜스● Java 풀이● 시간 제한 1초● 메모리 제한 512 MB문제 캐슬 디펜스는 성을 향해 몰려오는 적을 잡는 턴 방식의 게임이다. 게임이 진행되는 곳은 크기가 N×M인 격자판으로 나타낼 수 있다. 격자판은 1×1 크기의 칸으로 나누어져 있고, 각 칸에 포함된 적의 수는 최대 하나이다. 격자판의 N번행의 바로 아래(N+1번 행)의 모든 칸에는 성이 있다. 성을 적에게서 지키기 위해 궁수 3명을 배치하려고 한다. 궁수는 성이 있는 칸에 배치할 수 있고, 하나의 칸에는 최대 1명의 궁수만 있을 수 있다. 각각의 턴마다 궁수는 적 하나를 공격할 수 있고, 모든 궁수는 동시에 공격한다. 궁수가 공격하는 적은 거리가 D이하인 적 중에서 가장 가까운 적이고, 그러한 적이 여럿일 경우에..
유영웅
영차영차