
[백준 2563] 색종이
2023. 3. 26. 23:01
백준
https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 문제 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오. 예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 모양으로..

[백준 1244] 스위치 켜고 끄기
2023. 3. 19. 22:56
백준
https://www.acmicpc.net/problem/1244 1244번: 스위치 켜고 끄기 첫째 줄에는 스위치 개수가 주어진다. 스위치 개수는 100 이하인 양의 정수이다. 둘째 줄에는 각 스위치의 상태가 주어진다. 켜져 있으면 1, 꺼져있으면 0이라고 표시하고 사이에 빈칸이 하나씩 www.acmicpc.net 문제 1부터 연속적으로 번호가 붙어있는 스위치들이 있다. 스위치는 켜져 있거나 꺼져 있는 상태이다. 켜져 있을 때는 1, 꺼져 있을 때는 0이다. 스위치의 개수는 100 이하인 양의 정수이다. 학생들은 임의의 숫자를 부여받고 성별에 맞춰서 스위치의 상태를 변경한다.(스위치의 상태를 변경한다는 것은 1을 0으로 0을 1로 변경하는 것을 말한다.) 남학생의 경우 임의의 숫자의 배수인 스위치의 상..

[자료구조] 자료구조 정리 (1) : 자료구조란?
2023. 3. 12. 22:51
자료구조
WHY? 프로그래밍과 관련된 이론을 공부하거나 코딩테스트를 준비하는 사람이라면 자연스럽게 자료구조를 알게 된다. 자료구조를 찾아보면 알게 모르게 사용했던 배열과 리스트가 있고 처음 들어본 자료구조도 있을 것이다. 그냥 단순히 코드만 작성하면 되지 자료구조를 왜 공부해서 코드에 적용시켜야 할까? 자료구조란? 자료구조(data structure)란 여러 데이터들의 묶음을 저장하고, 사용하는 방법을 정의한 것이다. 또한 메모리를 효율적으로 사용하며 빠르고 안정적으로 데이터를 처리하는 것이 궁극적인 목표로 상황에 따라 유용하게 사용될 수 있도록 특정 구조를 이루고 있다. 자료구조의 특징 효율성 자료구조를 사용하는 목적은 데이터를 목적에 맞게 효율적으로 관리 및 사용하는 것이다. 따라서 상황에 맞는 적절한 자료구..

[Django] 기초 정리하기 (2) : URL
2022. 11. 22. 11:29
Web Framework/Django
WHY? 두 번째 Django 기초 정리는 사용자의 요청에 처음으로 만나는 URL이다. URL 이란? URL(Uniform Resource Locator 또는 통칭 web address)은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 즉, 컴퓨터 네트워크와 검색 메커니즘에서의 위치를 지정하는, 웹 리소스에 대한 참조이다. 쉽게 말해서, 웹 페이지를 찾기위한 주소를 말한다. 흔히 웹 사이트 주소로 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크상의 자원을 모두 나타낼 수 있다. 그 주소에 접속하려면 해당 URL에 맞는 프로토콜을 알아야 하고, 그와 동일한 프로토콜로 접속해야 한다. https://ko.wikipedia.org/wiki/URL 즉, URL은 우리가 살고 있..

[Django] 기초 정리하기 (1) : 프로젝트 시작과 가상 환경 설정
2022. 11. 14. 23:00
Web Framework/Django
WHY? Django 기초 정리하기 시리즈는 Django를 사용해서 웹 사이트 개발중에 자주 사용하는 개념과 함수를 아무생각 없이 사용하는 느낌이 들었고, 함수가 어떤 동작을 하는지는 알지만 그 함수에 대해서 정확히 모르고 있었다. 이렇게 되면 나중에 응용력이 떨어질 것을 우려해서 기초에 대한 정리가 필요하다고 판단하였다. 또한, Django를 사용해서 웹 사이트를 만들려고하는 사람들 중 이제 막 시작할려는 사람이 읽어보면 조금이라도 도움이 될 만한 내용을 정리한다. cmd 명령어는 Window 기준으로 작성하였다. MacOS의 명령어와 차이가 있다. 가상 환경 Django를 사용해서 웹 사이트를 개발할 때 가상 환경을 설정해야 한다. 가상 환경을 설정하는 가장 큰 이유는 다양한 프로젝트를 진행할 때 프..

[C 언어] for문에서 증감 연산자
2022. 6. 12. 21:25
프로그래밍 언어/C
WHY? for문의 증감식에서 증감 연산자를 사용할 때 전위 증감 연산자를 사용하든 후위 증감 연산자를 사용하든 for문의 결과값에는 차이점이 없었다. 결과값에 차이가 없으면 for문의 증감식에 전위, 후위 증감 연산자의 차이는 없는건지, 아무거나 사용해도 되는지에 대한 궁금증이 생겼다. for문에서 전위, 후위 증감 연산자의 차이 for문의 기본 구성은 아래 코드와 같다. for (초기화식; 조건식; 증감식) { (실행할 코드) } 여기서 우리가 생각해 볼 부분은 증감식이다. #include int main(void) { for (int i = 1; i

[C 언어] 증감 연산자
2022. 6. 11. 00:27
프로그래밍 언어/C
WHY? C 언어에서 반복문을 사용할 때 증감 연산자 많이 사용한다. 증감 연산자를 단독으로 사용할 때는 헷갈릴 경우가 없었는데, 전위, 후위 증감 연산자가 한번에 여러게 사용되면 헷갈리는 경우가 많았다. 그렇기에, 전위 증감 연산자와 후위 증감 연산자를 확실히 비교하고 정리한다. 증감 연산자? C 언어에는 증감 연산자('++', '--')를 사용할 수 있다. '++'는 특정 값을 +1 시켜주는 연산자이고, '--'는 특정 값을 -1 시켜주는 연산자이다. 위치에 따른 증감 연산자 증감 연산자를 사용할 때, 값의 앞에도 사용할 수 있고 뒤에도 사용할 수 있다. 증감 연산자의 위치에 따라서 전위 증감 연산자, 후위 증감 연산자로 분류한다. 또한, 전위와 후위는 연산의 순서가 다르기 때문에 차이점을 정확히 알..

[백준 16947] 서울 지하철 2호선 (python)
2022. 5. 25. 18:08
백준
https://www.acmicpc.net/problem/16947 16947번: 서울 지하철 2호선 첫째 줄에 역의 개수 N(3 ≤ N ≤ 3,000)이 주어진다. 둘째 줄부터 N개의 줄에는 역과 역을 연결하는 구간의 정보가 주어진다. 같은 구간이 여러 번 주어지는 경우는 없고, 역은 1번부터 N번까지 번호 www.acmicpc.net 문제 주어진 역과 역을 연결하는 구간의 정보를 사용해서 순환선을 찾고, 각 역에서 순환선 사이의 거리를 구하는 문제이다. 풀이 0. 역과 역을 연결하는 구간의 정보를 인접 리스트 방식으로 정리한다. 1. 순환선을 찾는다. 2. 각 역에서 순환선 사이의 거리를 구한다. 기본 설정 DFS를 사용할 때, 재귀 함수를 사용하면 최대 재귀 깊이를 늘려줘야 런타임 에러가 발생하지 ..