분류 전체보기 396

[SWEA]1288. 새로운 불면증 치료법(java)

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV18_yw6I9MCFAZN SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제에서 요구하는 것은 어떤 수의 자릿수 각각의 값들을 검증하는 것이라고 할 수 있다. 단순하게 풀면, 검증하기 위해 set에 넣어도 될 것 같은데, 비트마스킹을 이용해서 풀이해봤다. 먼저 어떤 수(N)은 검증을 완료할 때마다 같은 수가 더해지는 2N, 3N,,, 이 된다. 이 수를 10으로 나눠서 그 나머지를 확인해준다. 비트마스킹을 이용해서 확인하는 방법에는 1. &연산을 이용해서 숫자 지워주기..

[backjoon]1924 2007년 java

https://www.acmicpc.net/problem/1924 1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 나중에 문자열을 가공해서 산출하는 것과 같은 알고리즘 문제풀이에서 숫자 관련 응용문제가 나올 때 다져두면 좋을 것 같은 문제. 알고리즘 풀이를 하면서 느낀건 일단 알고리즘들을 이용해서 풀이하는 것도 중요하지만 일단 풀고 보는 것 구현이 제일 중요하다고 생각한다. 배열을 다루는 거나 그리디 같은 것도 기본적으로는 구현에서 시작한다고 생각하기 때문이다. 이 문..

[h2] h2를 오랜만에 사용해서 기억이 안 날때 팁

내 기억용으로 남기는 글 h2는 단순한 실행파일이라 어느 위치에 설치해도 상관은 없다. 하지만 과거에 실행을 했는데 그 위치가 기억 안나서 재설치 했는데 비밀번호 오류라는 등 문제가 생길 때 초기화 방법도 막막하다. 그때 C/PC이름에 들어가면 숨김 폴더로 .h2.server.properties , test.mv.db, test.trace.db등의 파일이 있는데 깔끔하게 지워주면 된다. 그럼 처음 상태, 초기화 상태로 사용 가능!! Wrong username or password 이 문제나, list들이 날라가서 고생했던...

정보 2021.11.19

kb 국민카드 서류 전형 합격 및 코딩 테스트 후기

kb 국민카드 관련해서 정보가 너무 없어서 포스팅! 서류 합격이 모집 인원의 몇 배수인지는 잘 모르겠다. kb국민카드는 상당히 자소서 문항이 많은 편이다. IT 계열 치고 인성적인 부분이 많은데 능동적인 부분을 잘 녹여내면 도움이 될 것 같다. 개선 경험, 큰 갈등 등을 너무 어렵게 생각하지 말고 개선을 통해 느낀점 나의 달라진 점과 크던 작던 갈등에 대해 나의 행동에 대해 적는 것이 중요한 듯 싶다. 서류에 합격하면 필기 전형을 치뤄야하는데 저번엔 모르겠고 이번은 오프라인으로 이뤄졌다. 스페이스쉐어 서울중부센터에서 NCS기반 직업기초능력 평가와 코딩테스트를 치루게 된다. 시험장에 가면 한 공간에 50명 넘게 있는 듯 했고 적어도 5층 이상의 공간을 사용하고 있는 것 같아서 300명 넘게 시험을 치룬듯하..

경험 2021.11.17

[backjoon]14891 톱니바퀴 java

https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net DFS를 이용해서 풀이해줘야 하는 문제. 원형이라 생각하여 어떻게 구현해야 하나 막막했지만 마주하는 부분의 값이 같을 때 회전하지 않고, 마주하는 부분이 다를 때 계속 회전하는 부분을 잘 생각해서 풀이하면 된다. 1. 계속해서 파고 들어가는 점에서 깊이 우선 탐색(DFS)해야 한다. 2. 종료 조건은 톱니를 벗어날 때(인덱스가 -1 이하거나 4 이상인 경우)와 마주하는 부분(N-N, S-S)이..

[beakjoon]16234 인구 이동

이전의 풀이보다 훨씬 깔끔하게 푼 거 같아서 추가 포스팅. 이번 풀이의 포인트는 인접한 나라를 관리할 때, 여기저기 변수 만들기가 헷갈리기도 하고 구역만 정해지면 독립적이라고 생각이 들어서 인접한 나라들을 다른 Queue에 넣어주었다. (Queue resultQueue) Queue에 넣어주면서 합계도 한 번에 하였고, Queue에 하나밖에 없으면 계산할 필요가 없기에 return 처리해 주었더니 이전 풀이에 비해 속도가 상당히 빨라졌다. 메모리는 똑같이 소모되는데 재탐색하는 과정이 없어서인듯하다. 풀이 방식을 정리하자면 일단 인접한 나라들을 전부 파악하며 두 나라들의 인구 차 범위를 확인해준다. (BFS, DFS 상관없음) 요구된 범위 안에 들어가 있다면, 다른 Queue에 넣어준다. 여기에 나는 fla..

[baekjoon]14502 연구소 java

https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 벽을 3개만 세울 수 있다는 것과 크기를 봤을 때, 백트래킹으로 모든 경우의 수를 구해서 풀이해도 될거라는 생각이 들었다. 따라서 백트래킹을 이용하여 모든 조합을 구해주었고, 그 값들을 벽으로 바꾼 후, BFS를 이용하여 전부 탐색을 해주었다.(DFS도 상관없음) 벽으로 바꾼 값들은 다시 돌려주어서 다른 경우에도 사용할 수 있도록 해주어야한다. 안전 지역을 파악하는 것때문에 전체 for문을 돌려서 안전한 곳만..

[backjoon]14503 로봇청소기 java

https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 먼저 boolean타입의 2차원 배열을 이용하여 청소한 부분을 확인해주고 계속해서 현재 위치를 끌고 나갔다. 청소가 안 되었다면 청소를 해주고,(marked = true) 왼쪽 방향(현재 방향을 기준으로 반시계 방향)에 청소를 해야한다고 할때, 새로운 좌표가 청소를 안 한 상태에 청소를 할 수 있다면 새로운 좌표로 다시 탐색 해주었다. 반대로 청소를 완료했거나 청소를 할 수가 없다면(벽이라서) ..

[beakjoon] 14890 경사로 java

https://www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 이 문제는 주어진 조건을 잘 거르고 양방향 설치가 가능하다는 점에 유의하면 된다. 시작점은 위거나 제일 왼쪽에서 시작. 나의 경우엔 배열을 일일이 만들어줘서 공통 메서드(route)에서 풀이하였다. 배열에서 인덱스값이 커지는 순서대로 파악하되, 앞뒤 값의 차가 1이면 경사로를 설치할 수 있는 길이가 되는지 확인한다. 앞뒤 차가 0이면 계속 탐색, 2 이상이면 경사로를 지을 수 없다. 경사로는 양방향이 가능한데 이 부분이..

[backjoon]21608 상어초등학교 java

https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 삼성전자 21 상반기 ce/im 기출문제 요구 사항대로 하면 되는 문제인데 조건들이 너무 세분화되어있어서 까다롭다고 느꼈다. 나무 재테크랑 비슷한 유형이라고 생각된다. 이 문제는 기본적으로 구현해야할 부분이 4단계이다. 근데 하나하나 유기적으로 연결되어 있어서 예외처리를 주의해줘야한다. 친구들 정보를 입력받는데, 친구들 입력 정보들은 마지막에 좋아하는 학생들이 주변에 얼마나 있는지 확인..

반응형