PS/Programmers

    Programmers / 과제테스트 / [실무 역량 과제] 게시물 레이아웃 재구성하기 (FE)

    게시물 레이아웃 재구성하기📌 문제테이블 형태로 나열되어 있는 게시물 조금 더 보기 좋게 카드 형태로 레이아웃을 수정하고, 정렬 및 북마크 기능을 추가하려고 합니다. 아래의 요구사항을 읽고 레이아웃 및 추가 기능을 완성해 주세요.✅ 레이아웃주어진 Card 컴포넌트를 활용하여 카드 형태로 레이아웃을 수정해 주세요.이때, 카드 요소 마다 특정 id 값을 지정해 주어야 합니다.✅ 정렬우측 상단의 셀렉트 버튼을 사용하여 게시물의 정렬 형태를 변경할 수 있습니다.게시물을 최근등록순과 조회순으로 정렬할 수 있으며, 게시물은 기본으로 최근등록순으로 정렬되어야 합니다.✅ 북마크카드 우측 상단의 북마크 아이콘 버튼을 사용하여 게시물을 북마크 할 수 있습니다.게시물이 북마크 되었음을 나타내기 위해서 북마크 된 게시물의 경..

    Programmers / Level 2 / 우박수열 정적분 / JS

    문제 간단설명우박수열은 1을 만들기 위해 다음과 같은 단계를 거칩니다.1-1. 입력된 수가 짝수라면 2로 나눕니다.1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다.2. 결과로 나온 수가 1보다 크다면 위 작업을 반복합니다. 은지는 우박수열을 좌표 평면 위에 꺾은선 그래프로 나타내보려고 합니다.초항이 k인 우박수열이 있다면, x = 0일때 y = k이고,다음 우박수는 x = 1에 표시합니다. 이렇게 만든 꺾은선 그래프를 정적분 하려고 합니다.x에 대한 범위 [a, b]가 주어진다면,처음부터 a만큼, 끝에서 b만큼 좌표사이의 넓이를 구하면 됩니다. 예를 들어,좌표가 6개 주어졌고,[a, b]가 [1, -2]라면,x = 1부터 x = 5(배열은 0부터 시작하므로 6은 5번째이다)에서 2를 뺀 3까지의..

    Programers / Level 3 / 양과 늑대 / JS

    문제 간단설명"양과 늑대" 문제는 트리 구조에서 양과 늑대를 관리하며 최대한 많은 양을 모으는 문제입니다. 제한 사항2 info의 원소는 0 또는 1입니다.info[i]는 i번 노드에 있는 양 또는 늑대를 나타냅니다.0은 양, 1은 늑대를 의미합니다.info[0]의 값은 항상 0입니다.즉, 0번 노드(루트 노드)에는 항상 양이 있습니다.edges의 세로(행)의 길이 = info의 길이 - 1edges의 가로(열)의 길이 = 2edges의 각 행은 [부모 노드 번호, 자식 노드 번호] 형태로,서로 연결된 두 노드를 나타냅니다.동일한 간선에 대한 정보가 중복해서 주어지지 않습니다.항상 하나의 이진 트리 형태로 입력이 주어지며, 잘못도니 데이터가 주어지는 경우는 없습니다.0번 노드는 항상 루트 노드입니다. 성..

    Programmers / Level 2 / 리코쳇 로봇 / JS

    문제 간단설명시작 위치에서 목표 위치까지 최소 몇 번만에 도달할 수 있는지 말하는 게임이다. 말은 상, 하, 좌, 우 4방향 중 한 방향으로만 움직일 수 있으며, 게임판 맨 끝이나 장애물에 부딪힐 때까지 미끄러져 이동하는 것을 한 번의 이동으로 한다.'.' : 빈 공간'R' : 로봇의 처음 위치'D' : 장애물의 위치'G' : 목표지점 게임판은 위 4가지로 구성되어 있으며, 최소 몇 번을 이동해야 하는지 반환하면 된다. 만약 도달할 수 없다면 -1을 반환하면 된다. 제한 사항3 3 board의 원소의 길이는 모두 동일하다.'R'과 'G'는 한 번씩 등장한다. 성공 코드function solution(board) { const dr = [-1, 1, 0, 0]; const dc = [0, 0, -1, ..

    Programmers / Level 2 / 테이블 해시 함수 / JS

    문제 간단설명다음과 같은 과정을 거쳐서 해시값을 반환하면 된다.테이블의 튜플을 col 번째 컬럼의 값을 기준으로 오름차순 정렬을 하되, 만약 그 값이 동일하면 기본키의 첫 번째 컬럼의 값을 기준으로 내림차순 정렬합니다.정렬된 데이터에서 S_i를 i번째 행의 튜플에 대해 각 컬럼의 값을 i로 나눈 나머지들의 합으로 정의합니다.row_begin  제한 사항1 1 1 data[i][j]는 i + 1 번째 튜플의 j + 1 번째 컬럼의 값을 의미합니다.1 1  성공 코드function solution(data, col, row_begin, row_end) { // 1. 테이블의 튜플을 col 번째 컬럼의 값을 기준으로 오름차순 정렬을 하되, // 만약 그 값이 동일하면 기본키인 첫 번째 컬럼의 값을 기..

    Programmers / Level 2 / 무인도 여행 / JS

    문제 간단설명지도는 1 x 1 사각형들로 이루어진 직사각형 격자 형태이다. 각 칸에는 'X' 또는 1에서 9사이의 자연수가 적혀있다. 'X'는 바다를 나타내며, 숫자는 무인도를 나타낸다. 상, 하, 좌, 우로 연결되는 땅들은 하나의 무인도를 이루고, 모두 합한값은 해당 무인도에서 최대 며칠동안 머물 수 있는지를 나타낸다. 각 섬에서 최대 며칠씩 머무를 수 있는지를 배열에 오름차순으로 담아 반환하면 된다. 만약 지낼 수 있는 무인도가 없다면 -1을 배열에 담아 반환하면 된다. 제한 사항3 3 maps[i]는 'X' 또는 1과 9 사이의 자연수로 이루어진 문자열이다.지도는 직사각형 형태이다. 성공 코드function solution(maps) { const totalRow = maps.length; co..