전체 글 (44) 썸네일형 리스트형 연속된 부분 수열의 합 https://school.programmers.co.kr/learn/courses/30/lessons/178870 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 개요 합이 k와 같은 부분수열을 찿는 알고리즘을 설계, 구현하는 것이 목표이다. 투 포인터 알고리즘을 써서 일정한 범위의 부분합을 구해야 한다. 단, 부분합을 구할 때 sum을 쓰면 시간 초과 오류가 발생한다. sum의 시간 복잡도는 O(n) 이다. 투 포인터 알고리즘에서 매번 sum을 사용하여 부분합을 구하면, 시간 복잡도는 최소 O(n^2)으로 늘어난다. 주어지는 데이터의 크기가 최대 .. 이웃한 칸 https://school.programmers.co.kr/learn/courses/30/lessons/250125 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 개요 선택한 칸의 색과 같은 색을 가진 이웃 칸의 개수를 구하는 문제이다. 이웃칸은 선택한 칸의 상/하/좌/우에 위치한 칸들이다. 이웃칸들을 탐색할 때, board의 범위 밖으로 벗어나지 않게 주의해야 한다. 알고리즘 및 풀이 1. 변수 설정 def solution(board, h, w): ans = 0 n, m = len(board), len(board[0]) color = board.. 과제 진행하기 https://school.programmers.co.kr/learn/courses/30/lessons/176962 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 개요 과제들을 주어진 규칙에 따라 끝마친 순서부터 나열하는 문제이다. 여기서 아래 3가지 경우를 고려해야 한다. i. 과제를 진행하는 중에 새 과제를 시작해야 하는 경우 ii. 한번에 과제를 다 끝낸 경우 iii. 모든 과제를 한번씩 진행하고, 못끝낸 과제가 남아있는 경우 알고리즘 및 풀이 1. plans 속 주어진 시간대를 분 단위로 통일한다. def convert_time(s): # 시.. [PCCP 기출문제] 2번 / 석유 시추 https://school.programmers.co.kr/learn/courses/30/lessons/250136 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 개요 각 열에서 얻을 수 있는 석유 양의 총합 중, 최댓값을 구하는 문제이다. 알고리즘 풀기 위해선 단계를 나눠서 접근하면 좋다. 1) 한 석유 덩어리에서 얻을 수 있는 석유 양 oil 을 구한다 2) 석유 덩어리가 어느 열 사이에 걸쳐있는 지 파악한다 3) 2)에서 구한 열에서 뽑을 수 있는 석유 양에 oil을 더한다 4) 1~3의 과정을 모든 석유 덩어리에 대해 반복, 결과를 list에.. [PCCP 기출문제] 1번 / 붕대 감기 https://school.programmers.co.kr/learn/courses/30/lessons/250137 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 개요 공격 및 치유 여부에 따라 체력의 증감을 반영하여, 공격이 끝난 다음 최종적으로 남는 체력을 구하는 문제이다 알고리즘 1. 현재 체력과 추가회복 쿨타임을 변수에 저장한다. 2. 마지막 공격이 들어오는 시간까지, 현재의 체력 상태 및 쿨타임을 1초 단위로 갱신한다. 1) 공격이 들어온다면 회복 쿨타임을 초기화하고, 체력을 공격력만큼 깎는다. 체력이 0 이하가 되면 -1을 반환한다. 2) 공격.. [PCCE 모의고사] 10번 문제풀이 https://school.programmers.co.kr/learn/courses/19275/lessons/240615 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 변수 snippet에 쓰여있는 문자열 쌍을 참고하여, 주어지는 문자열 message를 변경하는 코드를 완성해야 하는 문제이다. 요구사항 snippet = [["IMO", "In my opinion"]] message = "IMO, IMO" 예를 들어 snippet 과 message 가 위와 같다면, "IMO"는 "In my opinion"으로 치환하여 "IMO, In my opinion"를.. XSS-1 https://dreamhack.io/wargame/challenges/28 xss-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. 문제 수정 내역 dreamhack.io 문제 개요 웹사이트에서 임의의 자바스크립트 코드를 실행할 수 있는 XSS 취약점을 활용하여, 플래그를 얻는 것이 목표인 문제이다. Flag 위치 "/flag" 엔드포인트는 GET request가 오면 "flag.html"을 렌더링 한다. 하지만 POST request가 오면 "check_xss" 함수를 실행하고, 그 결과 별로 다른 자바스크립트 코드를 실행한다. "check_xss.. cookie https://dreamhack.io/wargame/challenges/6 cookie 쿠키로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 플래그 형식은 DH{...} 입니다. Reference Introduction of Webhacking dreamhack.io 개요 사용자를 인증하기 위해 사용하는 쿠키를 변조하여, 공격자가 admin 인 것처럼 웹사이트를 기만하는 것이 목적이다. 쿠키는 (Chrome 기준) 브라우저의 개발자 도구의 "Application" 메뉴에서 볼 수 있다. 취약점 분석 소스코드를 살펴보면, admin의 비밀번호가 Flag임을 알 수 있다. 하지만 여기서 admin의 비밀번호 그 자체를 알아내기에는 현실적.. 이전 1 2 3 4 5 6 다음