일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 백준#boj#12755
- 백준#BOJ#1939#중량제한
- 백준#BOJ#2615#오목
- 백준#BOJ#14501#퇴사#브루트포스
- 백준#BOJ#12865#평범한배낭
- 백준#BOJ#8012#한동이는영업사원
- 백준#boj#16932#모양만들기
- Today
- Total
목록분류 전체보기 (249)
순간을 성실히, 화려함보단 꾸준함을
안녕하세요. 참 기분이 이상합니다. 이 블로그를 운영하면서 처음으로 회고록을 써보네요. 사실 별거 없는 블로그를 운영하고 있고 대단한 회사를 다니는 사람도 아니어서 너까짓께 회고록?! 풉 ㅋㅋ 이런 반응이 나올 것 같아서 한번도 안써봤는데 그래두.... 제 시간을 되돌아보는 시간을 갖기에 회고록만한 기록이 없는 것 같습니다. 1. 취업과 관계 2022년 취업을 했습니다. 회사는 대기업IT계열사 입니다. 현재 수많은 sm팀 중 한곳에 속해 있으며 한 시스템을 맡아 유지보수 하는 일을 하고 있습니다. 사실 이 회사에 중고신입으로 입사를 했습니다. 그 전에 다니던 회사는 중견 si 업체였는데 집이랑 굉장히 멀기도 했고 제 기준에 원하는 기업으로 도약하기에는 부족하다고 생각이 되었고 입사를 하자마자 이직준비를 ..
안녕하세요ㅎㅎ.... 알고리즘 관련 글을 안쓰겠다고 했는데 ㅠㅠㅠ 어쩔 수 없나보네용 바로 문제 해설 들어가겠습니다. 정점 n 과 간선 v 의 그래프가 주어지고 k 만큼 파괴된 도시가 존재한 지도가 주어집니다. 도시가 파괴되었다는 뜻은 2가지 상황이 발생할 수 있는데 1) 직접 폭탄이 파괴된 도시에 떨어졌던가 2) 인접한 도시에 폭탄이 떨어졌던가 이렇게 2가지 상황이 존재할 수 있습니다. 문제에서 최소개수의 폭탄을 구해라!!! 라는 것이 아니라 그냥 지도의 가능여부와 가능하다면 폭탄의 개수, 폭탄이 떨어진 도시만 출력하면 된다고 했습니다. 그러면 그냥 맘편하게 개수는 필요없으니 될 수 있는대로 많이 폭탄이 떨어진 걸로 가정해보자고요 파괴된 도시가 존재하면 인접한 도시가 멀쩡한지 안한지 부터 검사합니다. ..
안녕하세요. 오랜만에 찾아왔습니다. 자바와 스프링을 많이 다루고 싶지만....현재 다니고 있는 회사에서는 현실적으로 그러지 못해서 반강제적(?)으로 쿼리를 엄청 다루게 되었는데요. 사실 취업하기 전까지만 해도 쿼리란 기본적인 DDL(CREATE,DROP,ALTER) 와 DML(SELECT, UPDATE, DELETE, INSERT) 밖에 몰랐던 상태였습니다. 일하다보니 자바보단 쿼리를 훨씬 많이 다루고 눈코딩을 해야하는 상황이 많아서 기왕 이렇게 된거 PL/SQL 도 공부할겸 배우고 느낀점들을 적어보려고 합니다. 가장 힘들었던 부분이 '디버깅' 입니다.(현재 회사에서 오라클을 사용하고 있어서 양해부탁드립니다) 이클립스와 인텔리제이 같은 굉장히 좋은 IDE를 스프링과 자바를 사용함으로써 정말..
안녕하세요 자바를 쓰다보니 기존에 C++ 를 사용했을때 보다 훨씬 번거롭고 복잡하고 짜증나는 일들이 많은 것 같아요 ㅎㅎㅎ C++ 에는 배열을 초기화 할때 대표적인 라이브러리가 존재하죠. 바로 memset 입니다. 이런 라이브러리를 자바에 비슷한게 없을까? 하고 검색해보니 잘 나오더라구요 ㅎㅎ Arrays.fill 입니다. https://www.geeksforgeeks.org/arrays-fill-java-examples/ 이 링크를 타고 들어가면 친절하게 사용방법 까지 나와있습니다. Java public class Main { private static FastIO scan = new FastIO(); static int k,n; static int arr[][] = new int [2][3]; pub..
안녕하세요. 정말 오랜만에 글을 적는 것 같습니다. 올해 초 2월 블로그 이전 공지를 내고 가득찬 마음가짐으로 새롭게 시작해보자 라고 다짐을 했었고, 그렇게 블로그를 이전했었습니다. 그러나 취업으로 인해 소홀해졌고 점점 블로그 글을 작성하는건 기쁨이 아닌 의무가 되었고 회사일이라는 핑계로 어느덧 제 일상속에서 사라져갔습니다. 그러던 어느날 문뜩 이 블로그가 생각나 들리게 되었고 참 열심히도 블로그를 관리했었구나 하는 느낌을 받게 되었습니다. 어떤거라도 이렇게 내가 열정적이었던 적이 있었나, 내 시간을 이렇게 태우면서까지 몰입했던 적이 있었나 하는 생각이 스쳐지나갔습니다. 그래서 다시 시작해보려고 합니다. 아마 알고리즘 관련 글은 더 이상 포스팅 하지는 않겠지만 개인적으로 공부하는 내용을 여기에 정리하면서..
티스토리 블로그를 이전하려고 합니다. 이유는 마크다운 기반으로 글을 작성하는데 마크다운 문법이 몇가지 적용이 안된다는 점 그리고 단락별 줄개행이 안된다는 점이 너무 불편하네요 또한 마크다운 문법으로 열심히 적고 난 후 수정하려고 하면 기본모드가 디폴트여서 문법이 풀려버립니다.... 이전할 주소는 https://velog.io/@bm_rabbit96 입니다. 그동안 좋지도 않은 이 블로그글을 봐주셨던 분들께 감사함을 표합니다.
오늘 엄청 고생했던 일화를 소개해 드릴려고 합니다. 제가 가끔 폰코딩을 할때가 있는데 이상하게 로직이 다 맞고 틀릴일이 없는 것 같은데 틀리는 겁니다 ㅠㅠㅠ그래서 djm03178님께 SOS 를 청했더니.......세상에나 '\' 때문에 틀렸던 거였습니다. https://www.acmicpc.net/problem/16139 16139번: 인간-컴퓨터 상호작용 첫 줄에 문자열 $S$가 주어진다. 문자열의 길이는 $200,000$자 이하이며 알파벳 소문자로만 구성되었다. 두 번째 줄에는 질문의 수 $q$가 주어지며, 문제의 수는 $1\leq q\leq 200,000$을 만족한다. 세 번째 www.acmicpc.net 제 소스입니다. //폰코딩..... #include using namespace std; st..
https://www.acmicpc.net/problem/14658 14658번: 하늘에서 별똥별이 빗발친다 첫째 줄에 네 정수 N, M, L, K가 주어진다. (1 ≤ N, M ≤ 500,000, 1 ≤ L ≤ 100,000, 1 ≤ K ≤ 100) N은 별똥별이 떨어지는 구역의 가로길이, M은 세로길이, L은 트램펄린의 한 변의 길이, K는 별똥별의 수를 www.acmicpc.net 해설 : 그냥 정말 아무 생각하지 않고 문제만 바라봤을땐,,,,그냥 50만짜리 2차원 배열 선언해주고 길이가 L인 정사각형으로 한칸씩 밀면서 비교해주면 되겠네???싶을 것 입니다. 그러나 항상 우린 조건을 보고 생각을 해야겠죠?L이 최대 10만이고 50만x50만 이니 무조건 tle가 발생합니다. 다른 방법을 생각해보려고 ..
https://www.acmicpc.net/problem/18223 18223번: 민준이와 마산 그리고 건우 입력의 첫 번째 줄에 정점의 개수 V와 간선의 개수 E, 그리고 건우가 위치한 정점 P가 주어진다. (2 ≤ V ≤ 5,000, 1 ≤ E ≤ 10,000, 1 ≤ P ≤ V) 두 번째 줄부터 E개의 줄에 걸쳐 각 간선의 정보 www.acmicpc.net 해설 : 전형적인 다익스트라 문제입니다. 다만 신경쓸만한 부분은 최단거리 중에 건우를 만날수 있냐 없냐인데 이 부분은 배열 하나만 선언해주면 됩니다. 전 check 배열하나 선언해 준 다음 다익스트라를 돌리면서 가중치가 '작거나 같을때' OR연산으로 체크해 주었습니다. 이때 주의할점은 priority_queue에 push 를 하는 경우는 무조건 ..
안녕하세염 이번글은 memcpy 함수를 사용할때 겪었던 경험을 풀려고 합니다. https://www.acmicpc.net/problem/3085 이 문제를 풀때 배열을 복사하기 위해서 평소 사용도 안해본 memcpy 함수를 사용해봤습니다. #include using namespace std; using ll = long long; int n; string board[50]; string cp_board[50]; void solve(); int go(); int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t = 1; while (t--)solve(); return 0; } void solve() { int dx[] = { -1,1,0,0 },..
https://www.acmicpc.net/problem/2799 2799번: 블라인드 첫째 줄에 M과 N이 공백으로 구분해서 주어진다. (1 ≤ M, N ≤ 100) 다음 줄에는 현재 건너편 아파트의 상태가 주어진다. 모든 창문은 문제 설명에 나온 것 처럼 4*4 그리드로 주어진다. 또, 창문과 www.acmicpc.net 해설 : n과 m의 범위가 100이 최대이니 생성되는 격자의 크기는 501이 최대가 됩니다. 그러면 그냥 싹다 해보면 됩니다. 창문의 형태는 3차원 배열로 미리 정해놓고 for 문 덕지덕지 발라서 하나씩 전부 확인해가면서 차근차근 진행해 나아가면 됩니다. 전형적인 기본구현 문제여서 딱히 해설할 것도 없습니다. #include using namespace std; using ll = ..
https://www.acmicpc.net/problem/16507 16507번: 어두운 건 무서워 첫 번째 줄에는 사진의 크기를 의미하는 정수 R, C (1 ≤ R, C ≤ 1,000)와 사진 일부분의 밝기 평균을 알아볼 개수를 의미하는 정수 Q (1 ≤ Q ≤ 10,000)가 주어진다. 다음 R개의 줄에 걸쳐 R×C 크기의 사 www.acmicpc.net 해설 : 전형적인 누적합 문제입니다. 이런 문제는 사실 '암기'에요. 비슷한 문제를 만나지 못했더라면 이번 문제를 통해 무조건 '암기'하시길 바랍니다!! 먼저 평균을 구하기 전에 (1,1)~(i,j) 까지의 누적합을 먼저 구하는게 우선이겠죠? dp[i][j] = dp[i-1][j]+dp[i][j-1] - dp[i-1][j-1] + arr[i][j] ..