개발 일기/취업 준비 2024. 6. 1.
2023 하반기 현대캐피탈 신입사원 채용 면접 후기
다시 채용 시즌이 온 것 같아 간단히 복기를 작성한다. 2023년 11월 22일 오후 15:00 쯤 입실, 본인 확인 및 대기하다가 한 명씩 들어가서 면접을 봤다.한 타임에 한 시간 정도를 소모하는 것 같았고 모든 직군이 줌 대기실에 모여 있다가 면접 회의실로 토스되는 형식이다. 같은 날 오전에 지금 다니고 있는 회사의 1차 면접을 본 후 간단히 점심만 먹고 면접을 진행했는데, 이미 체력적으로 많이 지쳐 있었다. 기억나는 바로는, 직무 면접(20분) - 이상한 질문(5분) - 인성/경험 질문(20분) 순서로 진행되었다. 사실 나는 전공자가 아니라 다른 지원자들에 비해 공부 기간이 절대적으로 짧기 때문에 전공 이론들과 그것들이 어떻게 실무에 적용되는지 스스로 공부하고 있는 것들을 확인하고 싶어 하셨다.게..

개발 일기/취업 준비 2024. 4. 6.
취업했습니다
작년 말 원하던 회사에 취업함으로써 많은 시간을 쏟았던 취업 준비는 멈추게 되었습니다~! 그동안 신입교육, 3개월의 수습을 거쳐 현재는 연구 부서에서 대내외적으로 서포트 하는 역할을 맡게 되었습니다. 사무실이 공항 바로 옆에 위치해 있어, 낭만 있는 환경에서 일하는 것이 아직까지는 매우 즐겁습니다. 개발을 직접 하는 일은 특정 부서에 배치될 때를 제외하고 별로 없겠지만, 진로 변경을 나름대로 성공하여 매우 만족스럽습니다. 게다가 원하는 회사! 앞으로는 이 기술 블로그가 아닌 일상 블로그 위주의 포스팅을 할 것이고, 유의미하게 큰 숫자는 아니지만 채용 시즌에 남겨 뒀던 후기글에 유입이 있는 것을 보아 시간이 될 때 개발자 취준을 하며 면접에 응시했던 회사들 후기를 남겨보려 합니다.
Computer Science/소프트웨어공학 2023. 11. 28.
UML Unified Modeling Languag
UML Basic - 모델링 언어의 실질적 표준 UML이란? Unified Modeling Language Modeling: 모델, 모형, 가짜 Language: 언어 → 의사소통으 수단 ⇒ 객체지향 설계의 표준 표기법으로 부치, 럼바우, 야콥슨의 표기법을 합친 개념 UML 특징 의사소통을 위한 도구 필요한 View만 시각화하여 이해하기 쉽도록 보여 준다 공통된 표준 언어로서 의사소통에 기여한다 모델링 언어 여타 다른 모델, 모형들과 마찬가지로 실제 만들어 보는 것과 모델을 만드는 것의 비용을 생각해 볼 수 있 프로젝트가 완료되었을 때 가장 확실한 결과물 도출 가능 초기 UML을 그렸지만, 개발 도중 설계 변경이 잦다 UML은 설계 능력을 올려줄까? 설계 능력, 구현 능력을 올려주는 도구는 아니 UML ..

Computer Science/데이터베이스 2023. 11. 27.
데이터베이스 모델링 Database Modeling
Database Modeling 소프트웨어 개발 방법론 Software Development Life Cycle, SDLC 요구분석 시스템 명세 설계DB 설계 (Modeling) UI / UX 설계 구현 테스트 유지보수 이 모든 절차를 소프트웨어 생명 주기라고 하며, 시스템의 개발부터 유지보수까지의 어떤 작업이 이루어지는지 단계별로 정리한 것을 뜻한다. 데이터베이스 모델링이란? 정보화 시스템을 구축하기 위해 어떤 데이터가 존재하는지, 또는 업무에 필요한 정보는 무엇인지 분석하는 방법이다. 관계형 데이터베이스 (RDBMS) 는 이 ‘표’의 개념을 사용해서 데이터를 구성하는 방법을 사용한다. 데이터베이스 모델링 과정 💡 요구사항 수집 및 분석 → 설계 (개념적 모델링 → 논리적 모델링 → 물리적 모델링) →..

알고리즘 문제/백준 2023. 11. 9.
14938 서강그라운드 Java
14938 서강그라운드 Java 오늘은 내가 골드 2를 달성한 영광스러운 날이다. 이 영광을 룸메이트인 서강대 출신 ○** 양에게 돌린다. (희성이라 성을 밝힐 수 없음) 문제 🌐 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 하는 게임이다. 서강그라운드에서 1등을 하면 보상으로 치킨을 주는데, 예은이는 단 한번도 치킨을 먹을 수가 없었다. 자신이 치킨을 못 먹는 이유는 실력 때문이 아니라 아이템 운이 없어서라고 생각한 예은이는 낙하산에서 떨어질 때 각 지역에 아이템 들이 몇 개 있는지 알려주는 프로그램을 개발을 하였지만 어디로 낙하해야 자신의 수색 범위 내에서 가장 ..

알고리즘 문제/백준 2023. 11. 7.
16945 숫자 재배치 Java
16945 숫자 재배치 Java 문제 🌐 두 정수 A와 B가 있을 때, A에 포함된 숫자의 순서를 섞어서 새로운 수 C를 만들려고 한다. 즉, C는 A의 순열 중 하나가 되어야 한다. 가능한 C 중에서 B보다 작으면서, 가장 큰 값을 구해보자. C는 0으로 시작하면 안 된다. 입력 첫째 줄에 두 정수 A와 B가 주어진다. 출력 B보다 작은 C중에서 가장 큰 값을 출력한다. 그러한 C가 없는 경우에는 -1을 출력한다. 접근 방법 순열을 구하고 앞자리가 0인 경우에는 제외했어야 하는데 바보처럼 삽질 했다…. 그리고 A의 길이가 B의 길이보다 길면 B보다 작은 순열이 나올 수 없으므로 순열 함수에 진입하기 전에 답을 출력했다! 꼼꼼하게 체크하고 풀어야 시험에서도 문제가 없을 텐데... 앞으로는 정신 차리고 풀..

Computer Science/정보처리기사 & 전산 필기 2023. 11. 3.
2018-3 정보처리기사 필기 기출 개념 정리 (오답 위주)
전자계산기 대박 쥐약 나 전자과인데.. 데이터베이스 해싱 테이블 오버플로우 처리 기법 collision(충돌 현상)이 발생했을 때 그 버킷에 저장할 slot이 없으면 overflow가 되는데 이를 위한 해결 방법은! 개방주소법 선형 방법으로, collision 발생 시 순차적으로 그 다음 빈 버킷을 찾아 저장함 폐쇄주소법 overflow 된 레코드들을 별도의 overflow 영역에 저장하고 chain(pointer)으로 홈 버킷에 연결하는 방법으로서, 해시표 내의 빈자리에 보관하는 direct chaining, 해시표와는 별도의 기억 공간에 보관하는 indirect chaining이 이씅ㅁ 재해싱 collision 발생 시 새로운 해싱 함수로 새로운 홈 주소를 구함 로킹 로킹 단위: 동시성 제어에서 한꺼..
Computer Science/정보처리기사 & 전산 필기 2023. 11. 2.
2018-2 정보처리기사 필기 기출 개념 정리 (오답 위주)
기출 풀고, 개념 정리 사악 하니까 서서히 점수가 오르고 있다...! 제발 아는 것만 나오길 ㅎㅎ 데이터베이스 차수, 카디널리티의 카티션 프로덕트 차수끼리는 더하고 카디널리티끼리는 곱한다 참조 무결성 vs 개체 무결성 개체 무결성 릴레이션에서 기본키를 구성하는 속성은 널(NULL)값이나 중복값을 가질 수 없다 참조 무결성 외래키 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 함. 즉 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다 로킹 로킹 크기가 커지면 로킹 개수 감소 ⇒ 오버헤드 감소, 공유도 감소 전자계산기구조 프로그래밍 기법 멀티 프로그래밍 한 대의 CPU로 여러 개의 프로그램을 동시에 처리 분산처리 프로그래밍 지역적으로 분산된 여러 대 컴퓨터 연결하고 작업을 분담하여 처리 일괄처..
Computer Science/정보처리기사 & 전산 필기 2023. 11. 2.
2018-1 정보처리기사 필기 기출 개념 정리 소프트웨어공학, 데이터통신 (오답 위주)
데이터베이스 관계데이터 모델의 무결성 개체 무결성 릴레이션에서 기본키를 구성하는 속성은 널(NULL) 값이나 중복값을 가질 수 없음 참조 무결성 외래키 값은 NULL이거나 참조 릴레이션의 기본키 값과 동일해야 한다 → 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다 도메인 무결성 특정 속성의 값이 그 속성이 정의된 도메인에 속한 값이어야 한다 COMMIT, ROLLBACK COMMIT 하나의 트랜잭션에 대한 작업이 성공적으로 끝나고 수행 결과를 관리자에게 알려주는 연산 ROLLBACK 하나의 트랜잭션 처리가 비정상적으로 종료되어 해당 트랜잭션을 재시작 OR 폐기 관계 대수 릴레이션 조작을 위한 연산의 집합, 기술적인 특성 가짐 절차적 언어 순수관계연산: select, project, join, di..

개발 일기/SSAFY 10th 2023. 11. 1.
SSAFY 1학기를 돌아보며
안녕! SSAFY 1학기가 한 달도 채 남지 않았다. 지금 인국공 필기를 앞두고 전공을 한 자라도 더 봐야 하지만 잡생각이 많아져서 잠시 정리하는 시간을 가져 보려 한다. SSAFY 1학기는 취준을 시작하고 자기 효능감을 가장 많이 느끼는 순간들 중 하나라고 말할 수 있다. 작은 것들 하나씩 해내는 것이 굉장히 뿌듯했나 보다. 더불어 나를 알아가는 시간이 되었다. 사춘기가 늦게 온 듯하다. 입과 전 엘리스AI트랙을 통해 개발 공부를 시작했을 때, SSAFY에 덜컥 합격했을 때를 돌아보면, '적성에 안 맞으면 공기업 판으로 돌아가야지', '실패하더라도 에어백 역할을 해 줄 곳이 있다' 라는 생각으로 임했다. 무엇보다 내가 목표했던 회사들은 1년에 한 번 채용할까 말까였고, 이미 NCS 및 전공 필기에 합격..
Computer Science/정보처리기사 & 전산 필기 2023. 11. 1.
2019-2 정보처리기사 필기 기출 개념 정리 소프트웨어공학, 데이터통신 (오답 위주)
소프트웨어공학 일정 계획 기법 WBS(작업 분해) PERT/CPM, 간트차트 럼바우 분석 기법 - 객체, 동적, 기능 객체 모델링, 동적 모델링, 기능 모델링 객체 모델링 시스템에서 요구하는 객체를 찾아 객체들의 특성 규명 동적 모델링 상태도 이용하여 객체들의 흐름 제어, 상호 반응 연산 순서 나타내주는 과정 기능 모델링 자료흐름도를 사용하여 프로세스들의 처리 과정 기술 소프트웨어 품질 목표 효율성 Efficiency 요구되는 기능을 수행하기 위해 필요한 자원의 소요 정도 **정확성 Incorrectness** Correctness 사용자의 요구 기능을 충족시키는 정도 ****무결성 Integrity**** 허용되지 않는 사용자나 자료의 변경을 제어하는 정도 ****신뢰성 Reliability**** 옳..
Computer Science/정보처리기사 & 전산 필기 2023. 10. 31.
2019-2 정보처리기사 필기 기출 개념 정리 전자계산기구조, 운영체제 (오답 위주)
전자계산기구조 SSD Solid State Drive 정보 저장 방식 SLC 1셀당 1bit MLC 1셀당 2bit TLC 1셀당 3bit 최대 연산자수 $2^n$ 모두 더하기 (n: 연산자 비트 수) 캐시메모리 검색 방법: Associative 보충 기억장치에 액세스할 때 주소를 사용하지 않고 기억된 정보의 일부분을 이용하여 원하는 정보를 찾는 것 → Associative(연상) CPU가 찾고자 하는 주기억장치 메모리가 캐시 메모리 어디에 있는지 빠르게 검색할 수 있게 사용하는 메모리 CAM(Content Addressable Memory)라고 부름 매핑 테이블 사용 외부 인자와 내용을 비교하기 위한 병렬 판독 회로가 필요하여 추가적인 비용 요구 인터럽트 우선순위 정전 > 기계 이상 > 외부 신호 > ..
Computer Science/정보처리기사 & 전산 필기 2023. 10. 30.
2019-3 정보처리기사 필기 기출 개념 정리 (오답 위주)
데이터베이스 순수관계연산자 SELECT 릴레이션에 존재하는 튜플 중에서 선택 조건을 만족하는 튜플들의 부분집합을 구하여 새로운 릴레이션을 만듦 릴레이션의 행에 해당하는 튜플들을 구하는 것이므로 수평 연산이라 한다 PROJECT 주어진 릴레이션에서 속성 리스트에 제시된 Attribute만 추출하는 연산 릴레이션의 열에 해당하는 Attribute만 추출하는 것이므로 수직 연산이라 함 JOIN 공통 속성을 중심으로 2개의 릴레이션을 하나로 합쳐서 새로운 릴레이션 생성 (일부 속성 추출, 중복 튜플 제거, 새로운 릴레이션) DIVISION X ⊃ Y인 2개의 릴레이션에서 R(X)와 S(Y)가 있을 때 R의 속성이 S의 값을 모두 가진 튜플에서 S가 가진 속성을 제외(분리)한 속성만을 구하는 연산 전자계산기구조 ..
Computer Science/정보처리기사 & 전산 필기 2023. 10. 28.
2019-1 정보처리기사 필기 기출 개념 정리 (오답 위주)
전산 필기 대비 구 정처기 기출 # 가보자고 데이터베이스 스키마 종류 외부 스키마 사용자나 프로그래머가 개인의 입장에서 필요한 데이터베이스의 논리적 구조 정의 서브스키마라고도 함 하나의 데이터베이스에는 여러 개 외부 스키마 존재 가능 하나의 외부 스키마를 여러 개의 응용 프로그램 혹은 사용자가 공유할 수 있다 일반 사용자는 SQL과 같은 질의어를 이용하여 DB를 쉽게 사용할 수 있다 개념 스키마 일반적인 의미의 스키마 데이터베이스의 전체적인 논리적 구조 → 조직 전체의 데이터베이스로 하나만 존재 데이터베이스의 접근 권한, 보안 및 무결성 규칙에 관한 명세 정의 데이터베이스 파일에 저장되는 데이터의 형태 내부 스키마 시스템 설계자 뷰 물리적인 저장장치 입장에서 데이터가 저장되는 방법 기술 실제 데이터베이스..
개발 일기/취업 준비 2023. 10. 25.
2023 하반기 현대캐피탈 신입사원 채용 코딩테스트 후기
10월 22일 진행 14:00~14:30 입실 15:00~17:00 시험 서류 전형 발표 전에 코딩테스트를 치고 서류 전형 평가에 코딩테스트 성적이 들어가는 것 같다. 총 4문항, 프로그래머스 환경에서 진행했고, 프론트엔드/백엔드 직무였기 때문에 희망 직무에 따라 언어를 선택해서 봤다. 자바스크립트로 볼까 3초 정도 고민했지만 계속 자바로 공부했기 때문에 바로 자바를 선택했다. 1. 그리디 + 정렬 2. 자료구조, 탐색, 조합 3. 최소 비용 구하기 4. DP 정도였고, 최적화를 하고 싶었지만 체력적 이슈 + 시간이 애매하게 남아 있었기 때문에 그냥 제출했다. 프로그래머스 환경에서 최적화를 하기가 힘든데, 다른 사람도 같은 환경에서 좋은 코드를 제출하는 것일 테니 더 연습해 보도록 하자! 좋은 경험이었다..

알고리즘 문제/백준 2023. 10. 24.
21608 상어 초등학교 Java
21608 상어 초등학교 Java 문제 🌐 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호가 매겨져 있고, (r, c)는 r행 c열을 의미한다. 교실의 가장 왼쪽 윗 칸은 (1, 1)이고, 가장 오른쪽 아랫 칸은 (N, N)이다. 선생님은 학생의 순서를 정했고, 각 학생이 좋아하는 학생 4명도 모두 조사했다. 이제 다음과 같은 규칙을 이용해 정해진 순서대로 학생의 자리를 정하려고 한다. 한 칸에는 학생 한 명의 자리만 있을 수 있고, |r1 - r2| + |c1 - c2| = 1을 만족하는 두 칸이 (r1, c1)과 (r2, c2)를 인접하다고 한다. 비어..

etc 2023. 10. 23.
Github 프로필 꾸미기 - Github Stats, solved.ac 연동
몇 주 동안 마숙(마음의 숙제)로 미뤄두고 있던 Github 프로필을 꾸몄다. 마크다운으로 전부 쓰는 게 막막했지만 익숙해지니 할 만했다! 공교롭게도 100번째 게시물로 Github 프로필 꾸미기를 올리게 되었다. 뭔가 개발자가 된 기분.. 결과물 yyoungl - Overview yyoungl has 10 repositories available. Follow their code on GitHub. github.com Github 프로필을 꾸밀 수 있는 api는 여기저기 많이 있다. 내가 사용한 것들 위주로 설명해 보겠다! 기본적으로 Github 저장소 README를 읽어 보면 사용법을 익히고 커스텀 할 수 있는데, 그것도 귀찮다면 적용한 사람들의 Raw 파일을 보고 유저 이름만 바꾸는 것도 방법이긴 ..

알고리즘 문제/프로그래머스 2023. 10. 23.
(프로그래머스 Lv.1) 예산
(프로그래머스 Lv.1) 예산 문제 🌐 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없습니다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고 합니다. 물품을 구매해 줄 때는 각 부서가 신청한 금액만큼을 모두 지원해 줘야 합니다. 예를 들어 1,000원을 신청한 부서에는 정확히 1,000원을 지원해야 하며, 1,000원보다 적은 금액을 지원해 줄 수는 없습니다. 부서별로 신청한 금액이 들어있는 배열 d와 예산 budget이 매개변수로 주어질 때, 최대 몇 개의 부서에 물품을 지원할 수 있는지 return 하도록 solution 함수를 완성해주세요. 제..

개발 일기/취업 준비 2023. 10. 22.
SK C&C 2023 하반기 신입사원 채용 코딩테스트 후기
10월 22일 오전 9:00~11:00 시험 치고 13:00~14:30 인성 쳤다. 지난주 코테와 비교해 보자면, 그때는 어려운 문제를 오래 푸는 것 같았는데 이번 시험은 비교적 어렵지 않은 문제를 짧은 시간 동안 푸는 거였다. 테스트 케이스는 다 맞았지만, 문제의 조건에 만족하는지는 잘 모르겠다. 1. 간단한 수학 문제 2. 수학...? 탐색...? 맞게 풀었는지 모를... 3. 탐색 문제 비슷한 문제를 발견한다면 첨부하도록 하겠다! 시험 직전에 Comparator 쓰는 법을 달달 외워 갔는데 쓸 일은 없었다. 오히려 오후 시험에서 쓸 일이 있었다...! 이번 시험은 문제의 입력값을 보고 최적화할지는 생각하지 못하고 해결하기에만 급급했지만, 다음에는 조건을 잘 살펴보며 어떤 알고리즘으로 구현해야 효율적..

개발 일기/취업 준비 2023. 10. 21.
2023 하반기 SGI서울보증 신입사원 공개채용 전산 2차 필기시험 후기
헬로! 지난주 나의 첫 코딩 테스트인 LG CNS 코딩테스트를 대차게 말아먹고 첫 전산 필기를 보러 다녀왔다. 1교시 논술 논술 같은 경우, 경영/경제, 글로벌, 디지털 순서대로 문제가 나온 듯하다. 싸피 내에서 스터디를 진행하며 영상 보고 얘기한 주제가 나와서 많은 도움이 되었다. 특히 디지털 분야 같은 경우, 해커톤 준비를 하면서 조사한 내용과 유사한 주제가 나와 간결히 작성할 수 있었다. 2교시 전산 필기 전산 필기는 정보처리기사 준비했던 것 + 전산직 친구들이 준비하라고 한 방법대로 문제를 풀어보고 구체적인 개념을 정리하는 방식으로 준비했다. 어쩌면 지금 정처기 실기를 다시 보면 그때보단 잘 칠지도.... 아무튼, A매치에 준하는 기업이기 때문에 전기직 시험만 많이 치러 다녔던 내가 봐도 꽤나 난..

알고리즘 문제/프로그래머스 2023. 10. 20.
(프로그래머스 Lv.1) 달리기 경주
(프로그래머스 Lv.1) 달리기 경주 문제 🌐 얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다. 선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 문자열 배열 callings가 매개변수로 주어질 때, 경주가 끝났을 때 선수들의 이름을 1등부터 등수 순서대로 배열에 담아 return 하는 solution ..

알고리즘 문제/백준 2023. 10. 18.
17142 연구소 3 Java
17142 연구소 3 Java 문제 🌐 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고, 활성 상태인 바이러스는 상하좌우로 인접한 모든 빈 칸으로 동시에 복제되며, 1초가 걸린다. 승원이는 연구소의 바이러스 M개를 활성 상태로 변경하려고 한다. 연구소는 크기가 N×N인 정사각형으로 나타낼 수 있으며, 정사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽, 바이러스로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 활성 바이러스가 비활성 바이러스가 있는 칸으로 가면 비활성 바이러스가 활성으로 변한다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴..

알고리즘 문제/백준 2023. 10. 17.
17141 연구소 2 Java
(17141) 연구소 2 Java 문제 🌐 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 승원이는 연구소의 특정 위치에 바이러스 M개를 놓을 것이고, 승원이의 신호와 동시에 바이러스는 퍼지게 된다. 연구소는 크기가 N×N인 정사각형으로 나타낼 수 있으며, 정사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 빈 칸은 바이러스를 놓을 수 있는 칸이다. 바이러스는 상하좌우로 인접한 모든 빈 칸으로 동시에 복제되며, 1초가 걸린다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴보자. 0은 빈 칸, 1은 벽, 2는 바이러스를 놓을 수 있는 칸이다. 2 0 0 0 1 1 0 0 0 ..

알고리즘 문제/백준 2023. 10. 16.
14502 연구소 Java
(14502) 연구소 Java 문제 🌐 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크기가 N×M인 직사각형으로 나타낼 수 있으며, 직사각형은 1×1 크기의 정사각형으로 나누어져 있다. 연구소는 빈 칸, 벽으로 이루어져 있으며, 벽은 칸 하나를 가득 차지한다. 일부 칸은 바이러스가 존재하며, 이 바이러스는 상하좌우로 인접한 빈 칸으로 모두 퍼져나갈 수 있다. 새로 세울 수 있는 벽의 개수는 3개이며, 꼭 3개를 세워야 한다. 예를 들어, 아래와 같이 연구소가 생긴 경우를 살펴보자. 2 0 0 0 1 1 0 0 0 1 0 1 2 0 0 1 1 0 1 0 0 0 1 0 0 0..

Web 개발 2023. 10. 16.
Java Project 와 SQL Database 연결하기 - JDBC (Java DataBase Connectivity) 활용, MySQL
Java Project - MySQL 연결: Java DataBase Connectivity 수업에서 MySQL을 활용한 데이터베이스 관리 방법을 배웠다. Java 프로젝트와 MySQL로 구축한 데이터베이스를 연결해 보자! 프로젝트에서 MySQL을 연결하려면, 초기 설정이 필요하다. 한번 살펴보자! 다운로드받기 MySQL :: Download Connector/J MySQL Connector/J is the official JDBC driver for MySQL. MySQL Connector/J 8.0 and higher is compatible with all MySQL versions starting with MySQL 5.7. Additionally, MySQL Connector/J 8.0 and ..

알고리즘 문제/SWEA 2023. 10. 13.
1249 [D4] 보급로
(1249) [D4] 보급로 문제 🌐 2차 세계 대전에서 연합군과 독일군의 전투가 점점 치열해지고 있다. 전투가 진행 중인 지역은 대규모 폭격과 시가전 등으로 인해 도로 곳곳이 파손된 상태이다. 그림 1(a)에서와 같이 도로들은 전투로 인해 트럭이나 탱크와 같은 차량들이 지나갈 수 없다. 전투에서 승리하기 위해서는 기갑사단과 보급부대가 신속하게 이동하기 위한 도로가 있어야 한다. 공병대는 출발지(S)에서 도착지(G)까지 가기 위한 도로 복구 작업을 빠른 시간 내에 수행하려고 한다. 도로가 파여진 깊이에 비례해서 복구 시간은 증가한다. 출발지에서 도착지까지 가는 경로 중에 복구 시간이 가장 짧은 경로에 대한 총 복구 시간을 구하시오. 깊이가 1이라면 복구에 드는 시간이 1이라고 가정한다. 지도 정보는 그림..

알고리즘 문제/백준 2023. 10. 12.
17471 게리맨더링 Java
(17471) 게리맨더링 문제 🌐 백준시의 시장 최백준은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 최백준은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름도 백준시로 변경했다. 이번 선거에서는 최대한 공평하게 선거구를 획정하려고 한다. 백준시는 N개의 구역으로 나누어져 있고, 구역은 1번부터 N번까지 번호가 매겨져 있다. 구역을 두 개의 선거구로 나눠야 하고, 각 구역은 두 선거구 중 하나에 포함되어야 한다. 선거구는 구역을 적어도 하나 포함해야 하고, 한 선거구에 포함되어 있는 구역은 모두 연결되어 있어야 한다. 구역 A에서 인접한 구역을 통해서 구역 B로 갈 수 있을 때, 두 구역은 연결되어 있다고 한다. 중간에 통하는 인접한 구역은 0개 ..