하루하루 꾸준히, 인생은 되는대로

전체 글 242

백준 1599 민식어 C++

https://www.acmicpc.net/problem/1599 1599번: 민식어 무엇인가를 창조하는 것은 어렵다. 오민식은 지금까지 어려운 다른나라의 언어를 쓰면서 백성들이 고통에 받는 것을 슬퍼하고 새로운 언어를 만들고자 했다. 그는 창조의 고통에 시달리던 중에 www.acmicpc.net 문제 무엇인가를 창조하는 것은 어렵다. 오민식은 지금까지 어려운 다른나라의 언어를 쓰면서 백성들이 고통에 받는 것을 슬퍼하고 새로운 언어를 만들고자 했다. 그는 창조의 고통에 시달리던 중에 결국 오영식에게 자신의 못다 이룬 꿈을 꼭 이루어달라면서 오영식에게 창조의 임무를 넘겼다. 오영식은 자신의 형이 창조에 고통에 시달리는 모습을 보고 마음이 아파서 자신은 창조를 하지 않기로 했다. 영식이는 표절을 하기로 했는..

알고리즘 2022.07.13

SCSS

scss- > css preprocessor 사용전 컴파일, 빌드 단계가 필요함 Gulp - > compile 하거나 transform해주는 Node.js 패키지 (자동화 도구) →반복적인 작업을 자동화해주는 패키지 SCSS를 사용하는 이유 → 프로젝트 규모가 커지면 CSS의 유지보수가 어려워진다. 코드의 재활용성을 올리고, 가독성을 올리는 등의 CSS에서의 단점을 보완하고 , 개발 효율을 올리기 위해 사용 SASS/SCSS의 차이 → SCSS는 SASS가 버전이 업데이트 되면서 기존 CSS와 호환성을 높이기 위해 도입된 문법이다 SCSS 변수 밑줄이 있는 SCSS 파일은 CSS로 변하지 않았으면 하는 것들임 평범한 CSS로 번역되거나 컴파일 되기 원하지 않는 파일들 기본적으로 웹 사이트에서 가장 중요한..

카테고리 없음 2022.07.13

백준 비슷한 단어 2179 C++

https://www.acmicpc.net/problem/2179 2179번: 비슷한 단어 첫째 줄에 S를, 둘째 줄에 T를 출력한다. 단, 이 두 단어는 서로 달라야 한다. 즉, 가장 비슷한 두 단어를 구할 때 같은 단어는 제외하는 것이다. www.acmicpc.net 문제 N개의 영단어들이 주어졌을 때, 가장 비슷한 두 단어를 구해내는 프로그램을 작성하시오. 두 단어의 비슷한 정도는 두 단어의 접두사의 길이로 측정한다. 접두사란 두 단어의 앞부분에서 공통적으로 나타나는 부분문자열을 말한다. 즉, 두 단어의 앞에서부터 M개의 글자들이 같으면서 M이 최대인 경우를 구하는 것이다. "AHEHHEH", "AHAHEH"의 접두사는 "AH"가 되고, "AB", "CD"의 접두사는 ""(길이가 0)이 된다. 접두..

알고리즘 2022.07.13

백준 11536 줄 세우기 C++

문제 악독한 코치 주혁은 선수들을 이름 순으로 세우는 것을 좋아한다. 더 악독한 것은 어떤 순서로 서야할지도 알려주지 않았다! 선수들의 이름이 주어질 때 어떤 순서로 이루어져있는지 확인해보자. 입력 첫째 줄에 N개의 이름이 주어진다. (2 ≤ N ≤ 20) 다음 N개의 줄에는 각 선수들의 이름이 주어진다. 이름은 2 이상 12 이하의 대문자로만 이루어져있다. 선수의 이름은 중복되지 않는다. 출력 이름이 증가하는 순으로 나타나면 INCREASING, 감소하는 순이면 DECREASING을 한 줄에 출력한다. 만약 위의 두 경우가 아니라면 NEITHER를 출력한다. #include #include #include using namespace std; int main(void){ int n; cin >> n; ..

알고리즘 2022.07.11

백준 9081 단어 맞추기 C++

https://www.acmicpc.net/problem/9081 9081번: 단어 맞추기 입력의 첫 줄에는 테스트 케이스의 개수 T (1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 하나의 단어가 한 줄로 주어진다. 단어는 알파벳 A~Z 대문자로만 이루어지며 항상 공백이 없는 연속된 알 www.acmicpc.net 문제 BEER라는 단어를 이루는 알파벳들로 만들 수 있는 단어들을 사전 순으로 정렬하게 되면 BEER BERE BREE EBER EBRE EEBR EERB ERBE EREB RBEE REBE REEB 와 같이 된다. 이러한 순서에서 BEER 다음에 오는 단어는 BERE가 된다. 이와 같이 단어를 주면 그 단어를 이루는 알파벳들로 만들 수 있는 단어들을 사전 순으로 정렬할 때에 주어진 단..

알고리즘 2022.07.11

백준 11497 통나무 건너뛰기 C++

https://www.acmicpc.net/problem/11497 11497번: 통나무 건너뛰기 남규는 통나무를 세워 놓고 건너뛰기를 좋아한다. 그래서 N개의 통나무를 원형으로 세워 놓고 뛰어놀려고 한다. 남규는 원형으로 인접한 옆 통나무로 건너뛰는데, 이때 각 인접한 통나무의 높이 www.acmicpc.net 문제 남규는 통나무를 세워 놓고 건너뛰기를 좋아한다. 그래서 N개의 통나무를 원형으로 세워 놓고 뛰어놀려고 한다. 남규는 원형으로 인접한 옆 통나무로 건너뛰는데, 이때 각 인접한 통나무의 높이 차가 최소가 되게 하려 한다. 통나무 건너뛰기의 난이도는 인접한 두 통나무 간의 높이의 차의 최댓값으로 결정된다. 높이가 {2, 4, 5, 7, 9}인 통나무들을 세우려 한다고 가정하자. 이를 [2, 9,..

알고리즘 2022.07.11

백준 2491 수열 C++

https://www.acmicpc.net/problem/2491 2491번: 수열 0에서부터 9까지의 숫자로 이루어진 N개의 숫자가 나열된 수열이 있다. 그 수열 안에서 연속해서 커지거나(같은 것 포함), 혹은 연속해서 작아지는(같은 것 포함) 수열 중 가장 길이가 긴 것을 찾 www.acmicpc.net 문제 0에서부터 9까지의 숫자로 이루어진 N개의 숫자가 나열된 수열이 있다. 그 수열 안에서 연속해서 커지거나(같은 것 포함), 혹은 연속해서 작아지는(같은 것 포함) 수열 중 가장 길이가 긴 것을 찾아내어 그 길이를 출력하는 프로그램을 작성하라. 예를 들어 수열 1, 2, 2, 4, 4, 5, 7, 7, 2 의 경우에는 1 ≤ 2 ≤ 2 ≤ 4 ≤ 4 ≤ 5 ≤ 7 ≤ 7 이 가장 긴 구간이 되므로..

알고리즘 2022.07.09

CSS Grid

Grid도 flex와 마찬가지로 부모에 display:grid를 주는 것부터 시작 class = "father"> 1 2 3 처음 Grid의 행(row)과 열(column)이 몇 개 있는지 정해야 함 grid-template-colums: 20px 55px 89px 100px; //원하는 column의 개수 (원하는 크기만큼) //1번쨰 column은 20px, 2번쨰 column은 55px, //3번쨰 column은 89px, 4번쨰 column은 100px grid-templates-rows : 20px 55px 80px 100px; //원하는 row의 개수 (원하는 크기만큼) //첫번쨰 row는 20px, 두번쨰 row는 55px, 세번째 row는 80px, //마지막 row는 100px Grid에..

카테고리 없음 2022.07.06

백준 10971 외판원 순회 2 C++

https://www.acmicpc.net/problem/10971 10971번: 외판원 순회 2 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 10) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net 문제 외판원 순회 문제는 영어로 Traveling Salesman problem (TSP) 라고 불리는 문제로 computer science 분야에서 가장 중요하게 취급되는 문제 중 하나이다. 여러 가지 변종 문제가 있으나, 여기서는 가장 일반적인 형태의 문제를 살펴보자. 1번부터 N번까지 번호가 매겨져 있는 도시들이 있고, 도시들 사이에는 길이 있다...

알고리즘 2022.07.06

너비 우선 탐색 (BFS, Breadth-First Search)

BFS는 너비 우선 탐색(Breadth-First-Search)의 약자이고, DFS와 마찬가지로 그래프의 탐색을 위한 알고리즘이다. 시작 정점에서 가까운 정점을 먼저 방문하고, 멀리 떨어진 정점을 나중에 방문하는 알고리즘이다. 즉 , 깊게(deeply) 탐색하는 것이 아닌 넓게(widely) 탐색하는 알고리즘이며 , 두 노드 사이 최단 경로나 임의의 경로를 알고 싶을 떄 너비 우선 탐색을 선택한다. 너비 우선 탐색의 특징 -직관적이지 않은 면이 있다. (시작 노드부터 시작해서 거리에 따라 단계적으로 탐색한다.) -BFS는 재귀적으로 동작하지 않는다. -어떤 정점을 방문했었는지 여부를 반드시 검사해야 한다 ( 그렇지 않으면 무한루프에 빠질 수 있다.) -BFS는 방문한 노드들을 차례로 저장한 후 꺼낼 수 ..

알고리즘 2022.07.05