728x90
반응형

알고리즘 258

모의고사, Python3 [프로그래머스]

문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를 작..

신규 아이디 추천, Python3 [프로그래머스]

문제 설명 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다. "네오"는 다음과 같이 7단계의 순차적인 처리 과정을 통해 신규 유저가 입력한 아이..

완주하지 못한 선수, Python3 [프로그래머스]

문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. def solution(participant, completion): for i in ..

크레인 인형뽑기 게임, Python3 [프로그래머스]

하루에 1개 아니면 2개씩 풀고 오래 걸리면.. 백준가서 비슷한 것을 풀어보기로 하였다. 문제 설명 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가..

CPU Scheduling criteria, 스케줄링 기준 [운영체제]

당연히 아무거나 스케줄링을 하진 않는다. 아무거나하면 효율적으로 나올리가 있나?? 당연히 없다. 스케줄링 알고리즘이 여러가지가 있는데 걔네들은 뭘 기준으로 짠걸까?? 기준 알아보자 우선 우리가 배운 것들을 알아보면? 5가지가 있다. • CPU utilization – keep the CPU as busy as possible • Throughput – # of processes that complete their execution per time unit • Turnaround time – amount of time to execute a particular process • Waiting time – amount of time a process has been waiting in the ready qu..

혼자서 프로그래밍, 알고리즘 실력 늘리기(영어말고 한글로)[백준알고리즘]

해커랭크가 영어라 복잡했다면 한글로 알고리즘을 공부하고 싶다면 그래서 준비한게 한글 알고리즘 사이트를 가져왔습니다. 우선 링크를 보자면 https://www.acmicpc.net/ Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 여기에 들어가서 회원가입을 하면 되는데?? 가입을 하면 이렇게 뜨고 메일 인증을 하랍니다 ㅎㅎ 이렇게 메일 인증을 하면 사용할 수 있습니다. 메일에서 인증을 완료하구요?? 문제를 봅시다 문제가 저렇게 많이있네요. 풀고싶은거 풀어보면 끗 간단한 것을 풀어보면 저렇게 나옵니다. 한글로 되어있어서 정말 친절하죠??? 만약 풀이를 알고싶다면 저렇게 코인을 써서 풀이를..

혼자서 프로그래밍, 알고리즘 실력 늘리기[해커랭크(HackerRank)]

혼자서 실력을 어떻게 늘릴까 고민하던 중 좋은 사이트를 찾아왔다 ㅎㅎㅎㅎ 왜냐면,, 내 전공이긴 하지만,,, 대학수업만으로는 늘릴 수 없다 ㅠㅠㅠ 특히 프로그래밍은 혼자하는 시간이 진짜 중요한 것 같다 그래서 나도 해보려고 ㅎㅎ 우선 링크를 줄게 https://www.hackerrank.com/ HackerRank Join over 7 million developers. Practice coding, prepare for interviews, and get hired. www.hackerrank.com 이런식으로 되어있는데 들어가면 무슨 언어에 관심있는지 나오는데 나는 C를 선택해가지고 이런 문제가 나왔지 싶다 ㅎㅎㅎ 쉽나??? ㅋㅋㅋㅋㅋ저기 solveMeFirst 함수를 완성시키면 된다는데 인트 자료형..

자료구조란 뭘까? (+추상자료형) (1)

자료구조에 대해 알아보겠습니다. 프로그램이라는 것은 data + 명령 또는 자료구조 + 알고리즘 이라고 볼 수 잇는데 여기서 좋은 프로그램이란 "시간 효율성" 과 " 공간 효율성" 이 뛰어난 것을 말한다. 또한 알고리즘이 잘 짜여져 있다는 것도 좋은 프로그램이라 말할 수 있겠죠? (알고리즘이란 문제 해결 과정을 뜻합니다.) 알고리즘의 조건에는 5가지정도가 있는데.. 1.입력: 0개 이상의 입력 2.출력: 1개 이상의 출력 3.명백성: 명령어의 의미가 명확 4.유한성: 일정한 단계 후에는 종료 5.유효성: 명령어들이 실행 가능해야 한다. 시간 효율성이란 말 그대로 같은 시간동안 얼마나 더 할 수 있느냐? 공간 효율성이란 말 그대로 같은 공간 (메모리) 안에서 얼마나 더 할 수 있느냐? 를 말한다. 일반적으..

728x90
반응형