일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바
- go
- 백준
- 정렬
- domain driven develop
- http 완벽가이드
- ddd
- 12761번 돌다리
- 12761 돌다리
- flask
- String 함수
- 몽고디비 렘
- 백준 파이썬
- 하둡
- 백준 12761번
- 백준 사이트
- 도메인 주도 개발
- 트리 순회
- 파이썬
- 백준 12761
- MongoDB Realm
- golang struct
- 고 배열
- 자바 디자인패턴
- 자바 디자인 패턴
- hadoop
- golang
- 도메인 주도 개발 시작하기
- http 개념
- 우분투
- Today
- Total
목록백준 (17)
개발바닥
문제 https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 해결 방법 collections 모듈에 Counter 함수를 사용해서 알파벳 카운트를 한 뒤 내림차순 정렬을 해서 첫번째 인덱스와 두번째 인덱스가 같으면 물음표를 출력하고 다르면 첫번째 인덱스 알파벳을 출력하면 된다. 소스 코드 보기 https://github.com/jokerKwu/BOJ_Algorithm/blob/master/python/BOJ_1157.py jokerKwu/BOJ_Algorithm Contribut..
문제 https://www.acmicpc.net/problem/18809 18809번: Gaaaaaaaaaarden 첫째 줄에 정원의 행의 개수와 열의 개수를 나타내는 N(2 ≤ N ≤ 50)과 M(2 ≤ M ≤ 50), 그리고 초록색 배양액의 개수 G(1 ≤ G ≤ 5)와 빨간색 배양액의 개수 R(1 ≤ R ≤ 5)이 한 칸의 빈칸을 사이에 두고 주어진다. 그 다음 N개의 줄에는 각 줄마다 정원의 각 행을 나타내는 M개의 정수가 한 개의 빈 칸을 사이에 두고 주어진다. 각 칸에 들어가는 값은 0, 1, 2이다. 0은 호수, 1은 배양액을 뿌릴 수 없는 땅, 2는 배양 www.acmicpc.net 문제 해결 방법 순열 + bfs 로 문제를 해결할 수 있습니다. 완탐이 가능한 이유는 배양액을 뿌릴 수 있는..
문제 https://www.acmicpc.net/problem/17609 문제 해결 방법 앞 뒤로 같은지 체크하면서 다르다면 1. 앞 쪽을 한개 지우고 진행해본다. 2. 뒤 쪽을 한개 지우고 진행해본다. 3. 둘다 유사한 회문이 될 수 없다면 2를 저장한다. 실패한 방법 앞 쪽을 제거하고 제거한 다음 부분이 같다면 뒤 쪽을 지우는 경우의 수를 체크안해서 실패했다. 반례로 baaba 앞이랑 뒤가 다르기 때문에 앞쪽을 제거하게 되면 aaba로 앞 뒤가 같아지게 된다. 하지만 다음 ab에서 다르기때문에 2를 저장한다. 뒤쪽을 제거하게 되면 baab 로 유사한 회문이 되지만, 이 부분을 놓쳐서 실패를 계속했다. 소스 코드 https://github.com/jokerKwu/BOJ_Algorithm/blob/mas..
문제 https://www.acmicpc.net/problem/9376 실패 했던 이유 제출 했을 때 메모리 초과가 발생했다. 그 원인을 찾아보니 맵이 커지면 큐에 중복되서 좌표를 집어 넣어서 큐가 터져서 메모리 초과가 발생했던 것이다. 문제 해결 방법 문제에서 죄수2명과 상근이가 문을 최소로만 열고 탈옥을 해야되므로 각각 bfs를 돌려서 문을 최소로 열면서 탈옥하도록 구현을 한다. 이렇게 되면 죄수2명 상근 각각 이동 횟수 맵이 만들어지므로 총 3개 맵이 만들어진다. 3개 맵을 합쳐서 맵안에서 이동가능한 경로 중 최소값을 뽑아 내면 된다. 여기서 주의할 점 세명이 문 '#' 좌표에 모이는 곳을 처리하는 과정이다. 죄수나 상근이가 문을 열게되면 다른 두명은 그 문을 열 필요가 없기 때문에 그냥 이동이 가..
문제 https://www.acmicpc.net/problem/3055 문제 해결 방법 BFS로 문제를 해결하면 된다. 문제 조건에서 물이 들어갈 예정에는 고슴도치를 이동시킬 수 없으므로 물을 먼저 이동시키고 고슴도치를 이동시키면 된다. 소스 코드 https://github.com/jokerKwu/BOJ_Algorithm/blob/master/BFS/boj_3055.cpp
문제 https://www.acmicpc.net/problem/2174 문제 해결 방법 주어진 조건대로 하나씩 구현하면 해결할 수 있다. 1. 명령어 하나씩 꺼내서 실행시킨다. 1-1 명령문에 따라서 움직여준다. ( 왼쪽, 오른쪽 회전 , 앞으로 전진) 앞으로 전진할 때 로봇이 있는지 벽이 있는지 체크해주어야 된다. 문제에서 실수할 수 있는 부분 일반적으로 왼쪽상단이 1,1 로 시작하지만 이 문제에서는 왼쪽 하단에서 1,1이 시작된다 이로 인해서 안바꾸고 작업을 하게되면 위로 가거나 밑으로 갈때 설정을 안바꿔주면 실패하게된다. 또 문제에서 놓칠수 있는 부분으로 명령문을 하나씩 꺼내서 한번씩 움직이는게 아니라 해당 명령문에 loop가 전부 끝날때까지 다른 명령문을 실행할 수 없다는 부분이다. 소스 코드 h..
문제 https://www.acmicpc.net/problem/9536 문제 해결 방법 HashMap을 사용해서 문제를 해결하였습니다. key 값= 동물 value값 = 동물 울음소리 로 보관하여서 value 값이 존재하지 않다면 출력하면 간단하게 문제를 해결하실 수 있습니다. 자바 사용하면서 몰랐던 사실은 nextInt 사용후 nextLine을 쓰고 싶다면 nextLine()을 한번 사용해주고 사용을 해야지 제대로 동작이 됩니다. 소스 코드 https://github.com/jokerKwu/java/blob/master/JavaStructure/src/BOJ/BOJ_9536.java