본문 바로가기

Algorithm8

[프로그래머스] Lv2. 덧칠하기 - Javascript # 문제 길이가 n인 벽에 페인트를 덧칠하려고 한다 페인트 칠하는 롤러의 길이는 m 미터 롤러로 페인트칠 하는 최소 횟수 반환 # 정의 롤러가 벽에서 벗어나면 안됨 구역의 일부분만 포함되도록 칠하면 안됨 한 구역을 여러 번 칠할 수 있음 # 제한사항 1 2023. 3. 5.
[프로그래머스] Lv1. 바탕화면 정리 - Javascript # 문제 컴퓨터 바탕화면에 있는 파일들을 삭제하려고 한다 바탕화면은 각 칸이 정사각형인 격자판 상태를 나타낸 문자열 배열 wallpaper 가 주어지고, 파일들은 각 격자칸에 위치한다 격자판은 가장 왼쪽 위를 (0, 0) 으로 시작해 (세로 좌표, 가로 좌표)로 표현 빈칸은 ., 파일이 있는 칸은 # 값을 가짐 최소한의 이동거리를 갖는 한 번의 드래그로 모든 파일을 선택하고자 한다. 이 때 드래그의 시작점과 끝점을 담은 정수 배열을 반환 # 정의 "점 S에서 점 E로 드래그한다"라는 표현은 격자점 S(lux, luy)에서 마우스 클릭 후 격자점 E(rdx, rdy)에서 떼는 행동을 의미한다. 드래그 한 거리는 | rdx - lux | + | rdy - luy | 로 정의 # 제한사항 1 el); } //.. 2023. 3. 5.
백준 baekjoon 단계별로 풀어보기 - 4. if문 사용해보기 안녕하세요! 꼬부기입니다.백준 사이트에서 알고리즘 공부를 하고 있는 분들께 이 시리즈가 도움이 되었으면 하는 바램으로 오늘은 4번째 단계인 'if문 사용해보기'에 대해 포스팅하겠습니다. 이번 문제집은 조건문을 사용해야 하기 때문에 문제를 읽고 필요한 조건을 파악해서 적절한 위치해 if문, else if 등의 문법을 잘 이용해야 합니다. 그럼 첫 번째 문제부터 보도록 하겠습니다.1. 백준 9498번 - 시험 성적시험 성적이 입력으로 들어왔을 때, 어느 점수 구간에 속하는지 if문을 통해 찾아내어 등급을 출력하는 문제입니다. 조건문if와 if else를 여러개 사용해서 해결할 수 있습니다. 코드는 다음과 같습니다.#include int main ( void ) { int val; scanf ( "%d", &.. 2018. 4. 27.
백준 baekjoon 단계별로 풀어보기 - 3. for문 사용해보기 안녕하세요! 꼬부기입니다. 이번에는 백준 단계별로 풀어보기 중에 3번째 문제집인 'for문 사용해보기'에 대한 포스팅을 하려고 합니다. 단계 별로 풀어보기 문제집에서 7번까지는 사용하는 언어의 기본을 익히는 내용이고, 8번 '규칙 찾기'부터 슬슬 머리를 써야하는 문제들로 이루어져 있습니다. 따라서 7번에 대한 포스팅까지는 간단한 설명과 함께 제가 짠 C언어 코드가 어떤식으로 이루어져 있는지 참고하면서 공부하는게 도움이 될 것이라고 생각됩니다.1. 백준 2741번 - N 찍기이 문제는 말그대로 반복문을 연습해보는 기본 문제입니다. 프로그래밍을 처음 접하는 사람들에게는 모든 것이 익숙치않아 어렵게 느껴질 수 있지만, 연습만 조금 하고나면 가장 많이 사용하게 될 for문입니다. 문제에서 주어지는 자연수 N이 .. 2018. 4. 26.
백준 baekjoon 단계별로 풀어보기 - 2. 사칙연산 도전하기 안녕하세요! 꼬부기입니다. 이번 포스팅은 백준 단계별로 풀어보기의 문제집 2번인 '사칙연산 도전하기'에 대해서 풀이를 적으려고 합니다. 이번 문제집 또한 저번 풀이집이었던 '1번 - 입/출력 받아보기'처럼 기본기를 다지는 문제들로 이루어져 있습니다. 각자가 선택한 언어에 대해서 기본 연산자를 사용하는 방법을 익힐 수 있는 문제들을 지금부터 풀어보시겠습니다. 1. 백준 1000번 - A+B 이 문제는 두 개의 정수를 입력받아 덧셈 결과를 출력하는 문제입니다.그 뒤에 이어지는 1001번, 10998번, 1008번도 마찬가지로 사칙연산 중 하나인 뺄셈, 곱셈, 나눗셈 결과를 출력하는 문제입니다. 1008번 나눗셈 문제는 C언어 같은 경우에 자료형이 달라지면서 생기는 문제점이 있기 때문에 아래에서 설명을 하고,.. 2018. 4. 22.
백준 baekjoon 단계별로 풀어보기 - 1. 입/출력 받아보기 안녕하세요! 꼬부기입니다. 이번 포스팅부터 백준 단계별로 풀어보기에 대한 문제 풀이를 시작하려고 합니다. 알고리즘 공부를 시작한지 얼마 되지 않아 깔끔하고 고수들의 코드는 아니지만, 다른 초보 분들이 접하셨을 때 비슷한 수준의 코드는 이해하기 편하실거라 생각하고 글을 진행하겠습니다. 단계별로 풀어보기 첫 번째 포스팅은 '입/출력 받아보기' 입니다. 프로그래밍 언어를 익힐 때 보통 가장 먼저 배우는 것이 입/출력이고, 모든 시작은 여기에서부터 이루어집니다. 저는 C언어로 진행하겠습니다. 검색해서 문제 해결방법을 보러 오신 분들께서는 Ctrl + F를 사용해서 백준 문제 번호 혹은 문제이름을 검색하시면 빠르게 찾으실 수 있습니다. 백준 - 입/출력 받아보기 1. 백준 2557번 - Hello World 이 .. 2018. 4. 6.
LCS - BOJ 9251번 안녕하세요! 꼬부기입니다. 이번 문제는 BOJ 9251번 - LCS 입니다. 1. 개요 LCS는 Longest Common Subsequence의 약자로, 해석하면 최장 공통 부분 문자열입니다. 연속적인 부분 문자열인 substring과는 달리 subsequence는 연속적이지 않은 부분 문자열입니다. 익숙한 숫자로 생각을 해보면 다음과 같은 집합이 있다고 가정하겠습니다. S = {4, 7, 3, 1, 2, 9, 5} 이때, substring은 {4, 7, 3, 1}, {3, 1, 2, 9} 또는 {7, 3, 1, 2, 9, 5}와 같이 연속적인 부분집합입니다. 반면에 subsequence는 {4, 1, 9}, {1, 5}와 같이 흔히 우리가 알고 있던 부분집합과 같은 개념이라고 접근하면 이해하기 편합니.. 2018. 4. 4.
KOI 2017 - 한국정보올림피아드 초등부 1. 딱지치기 (BOJ 14696번) 어린이 A와 B의 그림을 4,3,2,1 그림에 맞게 cnt배열을 증가시켜준다음, 별에 해당하는 부분부터 비교해 가면서 크면 답을 출력하고 break, 끝까지 가면 'D'를 출력하게 구현하였다. #include #include int main( void ) { int N, iter, val; scanf( "%d", &N ); int arr[2][4]; char result; for( int n = 0; n < N; n++ ) { memset( arr, 0, sizeof ( arr ) ); for( int i = 0; i < 2; i++ ) { scanf( "%d", &iter ); for( int j = 0; j < iter; j++ ) { scanf( "%d", &v.. 2018. 4. 4.
반응형