자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다.조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다.조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니다.조건 3. n의 다음 큰 숫자는 조건 1, 2를 만족하는
객체 Date를 이용하면 됩니다.이렇게 했더니 뒤에 우리한테는 쓰잘데없는 애들까지 출력이 된다.고렇다묜..냅다 분리!split("기준문자")을 이용해주면 됩니다.split은 기준문자를 기준으로 문자열을 분리해줍니다.이번 문제의 경우 T를 기준으로 나눠주면 됩니다..!이
문제는 왕 간단하다.하지만...내가 자스를...자바스크립트로 이걸 짜야해서...쬠 복잡해졌다.c++로 짰더라면 구냥 cin으로 값을 받으면 되지만자바스크립트는 그런놈없다...그래서 어케해야하냐..!!fs 모듈을 이용한다.fs모듈을 쉽게 말하자면 c++에서 ifstrea
일단 제목이 맘에 들어서 선택한 문제입니다.. 영화감독 숌근데 이 솜녀석.. 사람이 꼬여있네여.. 그냥 제목 1,2,3으로 지으면 될 것이지.. 암튼 이 꼬인녀석을 위해서 코드 짜봅시다..처음엔 어떤 규칙이 있을까 하고 고민을 해봤네여.. 근데 아무리 이 짱구를 굴려봐
문제 설명카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입
https://www.acmicpc.net/submit/13460/50422153https://na982.tistory.com/82?category=145346해당 블로그 참조해서 풀었습니다!고찰: 두 공이 같은 위치 일때 구멍인지 아닌지 판별해주어야
https://www.acmicpc.net/problem/14503https://velog.io/@sj-lee33/%EB%B0%B1%EC%A4%80-14503%EB%B2%88-%EB%A1%9C%EB%B4%87-%EC%B2%AD%EC%86%8C%EA%B
문제https://www.acmicpc.net/problem/14891참고 블로그https://velog.io/@khc41/%EB%B0%B1%EC%A4%80-14891%EB%B2%88-%ED%86%B1%EB%8B%88%EB%B0%94%ED%80%B4-
정수 n이 매개변수로 주어집니다. 다음 그림과 같이 밑변의 길이와 높이가 n인 삼각형에서 맨 위 꼭짓점부터 반시계 방향으로 달팽이 채우기를 진행한 후, 첫 행부터 마지막 행까지 모두 순서대로 합친 새로운 배열을 return 하도록 solution 함수를 완성해주세요.우
n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 1, 1, 1, 1, 1로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다.\-1+1+1+1+1 = 3\+1-1+1+1+1 = 3\
문제 설명문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "
주어진 항공권을 모두 이용하여 여행경로를 짜려고 합니다. 항상 "ICN" 공항에서 출발합니다.항공권 정보가 담긴 2차원 배열 tickets가 매개변수로 주어질 때, 방문하는 공항 경로를 배열에 담아 return 하도록 solution 함수를 작성해주세요.모든 공항은 알
참고블로그일단 요 문제를 풀기위해서는 MAP을 그려줘야겠다~! 생각을 했습니다.그래서 테두리 부분은 true, 안 부분은 false 이런식으로 해주어야겠다\~~싶었지만 생각해보니 우리는 테두리로만 탐색을 해야하기 때문에 테두리, 테두리 안, 테두리 밖 이렇게 3가지 경
배열을 새로 만들어서 거기에 기지국의 전파가 전달되는 인덱스의 번호를 모조리 저장하고 그것을 하나하나 확인하는 방식으로 짰다. 그랬더니 효율성 테스트에서 틀려버렸다... 아무래도 반복문이 너무 많아서 그랬던 듯 하다.해당코드머리를 써라 꼬린이씨!!!! 그래서 방법을 바
A 배열의 순서는 고정되어 있고 B 배열은 최대한 이길 수 있는 순서로 들어가면 된다. 따라서 A배열과 B 배열을 정렬해서 비교해주면 됩니다. 효율성 부분 테스트가 있으므로 B배열은 오름차순으로 정렬을 해준 뒤에 가장 끝 값이 최대값이므로 이를 이용해서 비교해주면 됩니
오늘도 문제가 길어서.. 링크로 남깁니다잇!!!!사실 오늘 문제에서 가장 큰 어려움은 LRU 알고리즘이 뭔지... 모른다는 것이었습니다..!!뜨헉...!! 분명 학부때 배웠을게 분명한데....... 이렇게 시간이 지나면 까먹어 버리는거죠..하지만 슬퍼하지 않고 다시 공
무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다.예를 들어, 사람들의 몸무게가 70kg, 50kg, 80kg, 50kg이고 구명보트의 무게 제한이 100kg이라면 2번째 사람
길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다.배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록
1 x 1 크기의 칸들로 이루어진 직사각형 격자 형태의 미로에서 탈출하려고 합니다. 각 칸은 통로 또는 벽으로 구성되어 있으며, 벽으로 된 칸은 지나갈 수 없고 통로로 된 칸으로만 이동할 수 있습니다. 통로들 중 한 칸에는 미로를 빠져나가는 문이 있는데, 이 문은 레버
길이가 같은 두 개의 큐가 주어집니다. 하나의 큐를 골라 원소를 추출(pop)하고, 추출된 원소를 다른 큐에 집어넣는(insert) 작업을 통해 각 큐의 원소 합이 같도록 만들려고 합니다. 이때 필요한 작업의 최소 횟수를 구하고자 합니다. 한 번의 pop과 한 번의 i
bfs 혹은 dfs를 사용해서 풀면 되는 문제입니다!!조건에서 따로 비의 양이 주어지지 않기 때문에 모든 경우의 비의 양을 고려해야 합니다.다만 지도에 나와있는 높이 중 최대 높이일 경우까지만 비교해주면 됩니다. (최소 높이 부터 최대 높이라고 생각했지만 최소 높이부터
문제에서 수빈이와 동생이 있는 위치가 숫자로 주어집니다.일차원 배열에서 BFS를 진행하면 되는 문제입니다.수빈이가 이동하는 방법x-1x+12\*x이고 각각 1초씩 걸립니다.우리는 여기서 수빈이가 동생을 찾기까지 몇 초가 걸리는지를 확인해야 합니다.\-> 이 부분이 좀
백트래킹을 이용해서 푸는 문제입니다.문제에서의 해설대로 숫자는 그대로이고 연산자의 조합을 다르게해서 결과 값을 비교하면 됩니다.dfs를 이용했습니다.유의해야 할 점은 나눗셈에 음수를 양수로 나눌 때는 C++14의 기준을 따른다. 즉, 양수로 바꾼 뒤 몫을 취하고, 그
나이트가 도착지까지 이동하는데 걸리는 시간을 반환하면 되는 문제입니다. 이때 이 거리는 최소가 됩니다.따라서 BFS를 이용해서 풀면 되는 문제입니다.다른 문제들과 달리 이동방향이 총 8개로 설정되어 있기 때문에 이 부분만 신경써주면 됩니다.let tc = Number(
백트래킹을 이용하는 문제입니다.일단 백트래킹이란 완전탐색의 아이디어에서 불필요한 분기를 가지치기 하는 것 입니다.즉, 완전탐색을 할 때 필요없는 부분은 탐색하지 않겠다는 것으로 보면 됩니다.그러면 이런 백트래킹은 언제 적용을 해야할까요?바로, 현재 상태를 결정하기 위한
구역을 나눠야 하는 문제입니다.완전탐색을 이용해서 구현하면 됩니다! 따라서 BFS/DFS 를 사용해주면 됩니다.저는 BFS가 더 편해서 그걸로 구현해줬습니다.단, 이 문제에서는 적록색약인 사람과 아닌 사람의 경우를 고려해야합니다.그래서 적록색약인 사람의 bfs , 아닌
참고블로그3차원배열을 이용해야 하는 문제입니다.입력도 여러번 받아야 합니다. 입력받을 때 주의해야할 점이 공백!을 꼭 무시해줘야 한다는 점입니다.각 층을 구별짓기 위해서 줄바꿈을 이용했으므로 이를 꼭 없애줘야 합니다. trim()을 이용하면 됩니다.추가로 새로운 LRC
문제 📝 문제풀이 완전탐색을 진행해야 하는 문제입니다. 최소 일 수라서 bfs를 사용해주었습니다! 제가 실수했던 것들 날짜 세는 전역 변수를 따로 만듦 위와 같이 짰습니다. 이렇게 했더니 예제 3번에 어긋났습니다. 이렇게 하면 잘 나왔을때 결과가 저것인데
최소 경로를 구하는 문제이기 때문에 BFS를 사용해주면 됩니다.층수를 저장할 1차원 배열U,D 위 아래로 두 가지 형태의 이동이 두가지만 잘 기억하면 됩니다!처음엔 코드를 이와 같이 짰습니다. 그랬더니 바로 틀렸습니다!가 떴습니다!!그래서 visited를 하나씩 찍어
홓홓 디따 오랜만에 왔습니다..이유는 무수한...시간초과들 속에서 오랜만에 얘를 봤기 때문이죠!끌끌~암튼 문제 풀이해볼게용일단 문제를 보면 N이라는 숫자가 G가 되어야 합니다.모든 경우의 수를 봐야하므로 완전탐색을 이용해야 합니다.맨 마지막 줄에 보면 버튼 누르는 횟수
문제참조블로그모든 경우의 수를 비교해봐야 하는 문제입니다.따라서 완전탐색이라고 생각했습니다!그리고 맞나 싶어서 분류를 봤더니!!허거덩.... 바로 dfs,백트래킹 문제였습니다!해가 아니라면 다시 돌아온다 라는 내용이 있으면 이 부분이 가지치기 라고 합니다.불필요한 경로
문제참고블로그공격할 수 없게 놓는 조건모든 퀸의 상하좌우 대각선에 퀸이 있어선 안된다. \- 끝까지 봐야함이차원 배열을 선언해서 각 좌표에 놓았을 경우를 모두 생각해주려고 했는데우선 코드가 너무 복잡해졌고 돌아가지도 않았습니다.. 모든 좌표를 볼 필요가 없고 한 행씩
참고블로그일단 분류를 먼저 봅시다.다이나믹 프로그래밍 입니다...!!이 문제에서는 1,2,3 을 더해서 숫자를 표현해줍니다!근데 중복을 허용해주지 않습니다.이 말은 1+2 와 2+1이 동일하다고 보는겁니다.이 문제 가 중복을 허용해주는 경우입니다.이 경우에는dn = d
문제촌수를 구하는 문제입니다.주어진 두 노드 간에 거리를 구하면 되는 문제입니다.위 그림 처럼 주어진 노드가 7,3인 경우 7에서 출발해 3까지 갈 때 몇번을 거치는지 세어주면 됩니다.DFS로 구현했습니다.계속해서 타고 들어가고 나오고를 반복해야하기 때문입니다.인자는
문제FOOD_TYPE으로 그룹을 짓고 SELECT 할 때 MAX(FAVORITES)을 이용하면 풀릴 것이라고 생각했습니다!결과가 위와 같이 나왔습니다. 이것으로 답이 다릅니다. 위에 쓴 코드는 GROUP BY로 FOOD_TYPE 별로 그룹을 짓습니다. 허나 이때 FAV
문제기존 토마토 문제에서 이동 조건에 상,하 가 추가된 문제입니다!따라서 이동 배열과 범위 조건을 변경해주면 되는 문제입니다.큐를 담을 때도 z값을 함께 담아주면 됩니다.이동 방향을 x,y,z 로 세 가지로 나뉘어서 살펴보면 됩니다.범위를 벗어나는 조건에도 z방향을 보
문제그리디 알고리즘... 을 알고싶어서 푼 문제입니다!일단 한 줄로 정리한다면현재 상황에서 가장 좋은 것(최선의 선택)을 고르는 알고리즘 이라고 합니다.각각 상황에서 '최적'이라고 생각하는 방법을 선택합니다.위 그림에서는 각 노드에서 가장 큰 수를 택할 때가 최적의 경
문제그리디로 풀면 되는 문제입니다.가장 큰 이익을 보는 경우는 쌀 때 사서 비쌀 때 팔면 됩니다.앞에서 부터 살펴보게 되면 반복문을 한 없이 돌려야 합니다.....그렇다면 뒤에서부터 배열을 보면 됩니다!뒤에서 부터 값을 보고앞에 값을 하나씩 살피면서 자신보다 작을 경우
문제참고블로그위 사진 처럼 한번만 중심을 기준으로 비교해주면 된다고 생각했습니다.하지만 이 경우는위와 같은 경우는 안되는 케이스지만 맞다고 출력하게 됩니다.업로드중..위 사진 처럼 중심을 기준으로 모든 대칭점을 확인해 주어야 합니다.따라서 한번의 반복문을 사용하는 것이
문제슬라이딩 윈도우를 이용해서 풀면 됩니다.슬라이딩 윈도우를 이동할 때 맨 뒷 값과 이전 슬라이딩 윈도우의 맨 앞 값을 계산해주면됩니다.이와 같은 방식으로 연산해주면 됩니다.그리고 end값이 맨 앞으로 넘어와야 하는 경우는(현재index + 접시개수k) % 모든회전초밥
한 자리씩 뜯어서 봐주면 됩니다!숫자는 5를 기준으로 생각해주면 됩니다.5를 넘지 않는다!마이너스 해서 없애주는 것이 낫습니다. 5를 넘는다!10으로 만들어서 넘겨주는 것이 낫습니다.ex) 16 이면 4를 더해서 20으로 만들어주고 10씩 2번 뺴서 6번의 연산을 거치
조건들에 맞춰서 구현해주면 되는 문제입니다\~~거리두기를 위하여 응시자들 끼리는 맨해튼 거리1가 2 이하로 앉지 말아 주세요.단 응시자가 앉아있는 자리 사이가 파티션으로 막혀 있을 경우에는 허용합니다.자신을 기준으로 상하좌우에 사람이 존재하는 경우자신을 기준으로 상하좌
문제이 문제는 다음으로 이동할 점이 이미 갔던 점!을 보는게 아니고다음으로 이동할 점으로 갈 때 거쳐가는 선을 이용했냐 안했냐를 봐야합니다!따라서 문제에서는 x는 -5부터 5까지 y는 -5 부터 5까지의 좌표평면이 주어졌지만 우리는 더 크게 봐야합니다.위 그림처럼 각