[백준] 1024번 수열의 합, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 11. 16:30[백준] 1024번 수열의 합, 파이썬 문제 풀이

문제 백준의 1024번 수열의 합을 찾는 문제를 해결했습니다. https://www.acmicpc.net/problem/1024 1024번: 수열의 합 첫째 줄에 N과 L이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이고, L은 2보다 크거나 같고, 100보다 작거나 같은 자연수이다. www.acmicpc.net 문제 N과 L이 주어질 때, 합이 N이면서, 길이가 적어도 L인 가장 짧은 연속된 음이 아닌 정수 리스트를 구하는 프로그램을 작성하시오. 입력 만약 리스트의 길이가 100보다 작거나 같으면, 연속된 수를 첫째 줄에 공백으로 구분하여 출력한다. 만약 길이가 100보다 크거나 그러한 수열이 없을 때는 -1을 출력한다. 예시: 18 2 출력 만약 리스트의 길이가 100보다 작거나 ..

[백준] 1064번 평행사변형, 파이썬 문제 풀이
Computer Science/알고리즘 문제2022. 1. 10. 19:26[백준] 1064번 평행사변형, 파이썬 문제 풀이

문제 백준의 1064번 평행사변형의 둘레를 구하는 문제를 해결했습니다. https://www.acmicpc.net/problem/1064 1064번: 평행사변형 평행사변형은 평행한 두 변을 가진 사각형이다. 세 개의 서로 다른 점이 주어진다. A(xA,yA), B(xB,yB), C(xC,yC) 이때, 적절히 점 D를 찾아서 네 점으로 평행사변형을 만들면 된다. 이때, D가 여러 개 나 www.acmicpc.net 문제 평행사변형은 평행한 두 변을 가진 사각형이다. 세 개의 서로 다른 점이 주어진다. A(xA,yA), B(xB,yB), C(xC,yC) 이때, 적절히 점 D를 찾아서 네 점으로 평행사변형을 만들면 된다. 이때, D가 여러 개 나올 수도 있다. 만들어진 모든 사각형 중 가장 큰 둘레 길이와 가..

[Software Engineering] 소프트웨어 공학이란?, 소프트웨어 공학의 필요성, 좋은 소프트웨어의 특성
Computer Science/소프트웨어공학2021. 10. 14. 21:55[Software Engineering] 소프트웨어 공학이란?, 소프트웨어 공학의 필요성, 좋은 소프트웨어의 특성

목표 소프트웨어 공학이란 무엇인지 알고, 좋은 소프트웨어란 무엇인지 이해하는 시간을 갖겠습니다. 목차 클릭하면 해당 목차로 이동합니다. Software Enginnering(소프트웨어 공학)이란? 좋은 소프트웨어가 가져야 할 특성 정리 개요 소프트웨어 공학(Software Engineering)은 전문적인 소프트웨어를 개발하는데 있어서 필수적인 요소입니다. 이를 고려하지 않고 무작정 개발에 뛰어든다면 실패할 가능성이 매우 높습니다. 실제로 프로젝트를 대략적으로 구상하고 바로 개발에 시작하면, 어느 순간 처음 생각했던 것과 아예 다른 방향으로 흘러가고 있는 것을 확인할 수 있습니다. 그제서야 다시 되돌리는 것은 매우 힘들죠.. 개인적인 공부를 위해 진행하는 프로젝트가 아닌, 기업에서 이런 상황이 발생한다면..

[자료구조] 양방향 연결리스트(Doubly Linked List), 원형 양방향 연결리스트(Circularly doubly Linked List)
Computer Science/자료구조2021. 9. 7. 21:22[자료구조] 양방향 연결리스트(Doubly Linked List), 원형 양방향 연결리스트(Circularly doubly Linked List)

목표 단방향 연결 리스트에 이어 양방향 연결리스트에 대해서 알아보도록 하겠습니다. 목차 클릭하면 해당 목차로 이동합니다. 양방향 연결 리스트(Doubly Linked List) 원형 양방향 연결 리스트(Circularly Doubly Linked List) 양방향 연결 리스트 연산(이동·삽입·탐색·삭제) 및 파이썬 코드로 구현하기 정리 개요 이전 포스팅에서 단방향 연결 리스트(Singly Linked List)에 대해서 알아보았습니다. 연결 리스트를 관리하는 클래스와 각 노드들의 head부터 tail까지 다음 노드의 주소와 key(value)값을 갖고 있는 구조입니다. 참고 : [자료구조] 단방향 연결리스트(Singly Linked List)란? 파이썬으로 구현하기 다음 노드의 주소만 알고 있기 때문에,..

[자료구조] 단방향 연결리스트(Singly Linked List)란? 파이썬으로 구현하기
Computer Science/자료구조2021. 8. 23. 15:41[자료구조] 단방향 연결리스트(Singly Linked List)란? 파이썬으로 구현하기

목표 단방향 연결리스트의 개념에 대해서 이해해보고 파이썬으로 구현해보도록 하겠습니다. 목차 클릭하면 해당 목차로 이동합니다. 단방향 연결 리스트란?(Singly Linked List) 파이썬으로 구현하기 정리 개요 앞서 순차적 자료구조인 리스트와 배열에 대해서 이해하고 스택과 큐에 대해서 공부하고 예제를 풀어보았습니다. 이번 포스팅에서는 단방향 연결리스트에 대해서 알아보도록 하겠습니다. 연결리스트는 배열과 유사하지만, 연속된 공간에 메모리를 차지하고 인덱스를 통해 상수시간 내에 값을 처리한다는 특징이 있습니다. 반면, 연결리스트는 메모리 상에 흩어져 있지만 연결되어 있다는 특징이 있습니다. 이에 대한 부분을 자세히 알아보도록 하겠습니다. 단방향 연결 리스트란?(Singly Linked List) 연결리스..

[백준] 큐 예제, 백준 1158번 요세푸스 문제(Josephus problem)
Computer Science/알고리즘 문제2021. 8. 20. 23:53[백준] 큐 예제, 백준 1158번 요세푸스 문제(Josephus problem)

목표 저번 포스팅에서 배운 큐의 개념을 토대로 요세푸스 문제를 해결해보도록 하겠습니다. 1158번 : 요세푸스 문제 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 요세푸스 문제란, N명의 사람들이 원형 탁자에 앉아있다고 했을 때, K번째 사람이 자리에서 일어나서 나간다고 생각하면 됩니다. 예를 들어, 5명이 앉아 있을 때 K=2라면 2번 사람이 일어나서 나가고 4번 사람이 일어나서 나가면 1, 3, 5번 사람이 앉아있겠죠? 그럼 여기서 3번이 나가는 것입니다. 앞에서부터 2의 배수번째 사람들이 나가는 거에요. 해당 문제를 큐로 구현해..

[자료구조] 큐(Queue)란?
Computer Science/자료구조2021. 8. 19. 09:59[자료구조] 큐(Queue)란?

목표 순차적 자료구조인 큐의 개념에 대해서 알아보겠습니다. 개요 저번 포스팅에서는 순차적 자료구조인 스택에 대해서 알아보았습니다. 큐(Queue)는 스택과 비슷한 부분들이 많기 때문에 비교하면서 큐에 대해서 이해하는 시간을 갖도록 하겠습니다. 큐(Queue)란? 큐(Queue)는 스택과 비슷한 형태를 가집니다. 다만, 스택은 LIFO(Last In First Out) 구조로 마지막에 들어온 데이터가 제일 먼저 나가는 형태입니다. 큐는 FIFO(First In First Out) 구조로 맨 처음 들어온 데이터가 먼저 나가는 형태입니다. 예를 들어, 마트에서 줄 서는 것을 생각할 수 있겠네요. 스택에서는 Push, Pop, Len, Top 4가지 연산을 지원했습니다. 큐는 Enqueue, Dequeue, i..

[백준] 2504번 괄호의 값, 괄호 맞추기, 스택 예제, 파이썬
Computer Science/알고리즘 문제2021. 8. 18. 19:07[백준] 2504번 괄호의 값, 괄호 맞추기, 스택 예제, 파이썬

개요 자료구조에서 배운 스택을 활용해서 백준 알고리즘 문제를 풀어보겠습니다. 참고 - [자료구조] 스택(Stack)이란? 스택을 활용해 괄호쌍 확인하기 제가 저번에 포스팅 했던 글입니다. 스택의 개념을 이해하면서 비슷한 예제를 풀었었는데요. 그 예시보다 조금 높은 난이도의 문제입니다. 문제 https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 www.acmicpc.net 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과..

image