분류 전체보기

문제 링크 : https://www.acmicpc.net/problem/11066 11066번: 파일 합치기 문제 소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본이 들어있는 한 개의 파일을 만든다. 이 과정에서 두 개의 파일을 합쳐서 하나의 임시파일을 만들고, 이 임시파일이나 원래의 파일을 계속 두 개씩 합쳐서 소설의 여러 장들이 연속이 되도록 파일을 합쳐나가고, 최종적으로는 하나의 파일로 합친다. 두 개의 파일을 www.acmicpc.net 문제 요약 여러 파일들이 주어졌을 때 파일들을 두 개씩 합쳐서 여러 장들이 연속이 되도록 파일을 합쳐나가 최종적으로..
문제 링크 : https://www.acmicpc.net/problem/2252 문제 요약 N명의 학생들을 키 순서대로 줄을 세우되, 모든 학생들을 다 비교해보는게 아닌 두 명씩 일부 학생들의 키를 비교한다. 입력에서 주어지는 A,B 쌍은 키 순서대로 주어지고, 학생들의 번호는 1부터 N번이다. 풀이 위상 정렬 문제입니다. 위상 정렬이란 ? https://suhwanc.tistory.com/74 위상 정렬 위상 정렬은 그래프의 간선 u, v (이 문제에선 a,b 쌍을 말한다) 이 u가 v보다 먼저일 때 정점의 순서를 찾는 알고리즘입니다. 위상 정렬을 구현할 때는 bfs를 사용합니다! 예를 들어 이런식으로 구성된 그래프가.. suhwanc.tistory.com 위상 정렬은 그래프의 간선 u, v (이 문제..
위상 정렬은 사이클이 없는 단방향 그래프에서 그래프의 간선 u, v 가 있을 때, 정점의 순서를 찾는 알고리즘입니다. 위상 정렬을 구현할 때는 bfs를 사용합니다. 예를 들어 이런식으로 구성된 그래프가 있다고 합시다. 여기서 중요한건 위상 정렬을 사용하기 위해선 반드시 모든 간선이 한 방향을 향하고 있어야 한다는 점입니다. 이 그래프가 주어졌을 때 가장 먼저 해야하는 일은 각 노드의 차수를 계산해야 합니다. 차수를 계산하는 방법은 일반적인 그래프와 살짝다른데, 일반적으로는 트리의 높이가 그 노드의 차수였다면 여기서는 연결되어있는 부모의 수가 그 노드의 차수가 됩니다. 차수가 0인 노드 : 4, 5, 3 차수가 1인 노드 : 2, 7, 8 차수가 2인 노드 : 6, 1 차수를 기록했으면 이제 부모가 존재하..
아래 내용은 Youtube 생활코딩(egoing)님의 WEB2 JavaScript 강좌를 듣고, 공부한 내용을 복습하는 겸 알려드리고자 쓴 내용들입니다. 강의의 자세한 내용을 듣고 싶으시다면? https://www.youtube.com/watch?v=dPRtcRwKo-Y&list=PLuHgQVnccGMBB348PWRN0fREzYcYgFybf&index=1 1. JavaScript 소개 JavaScript는 HTML, CSS와 같이 웹페이지에 적용할 수 있게 하는 프로그래밍 언어이다. HTML, CSS와 달리 JavaScript는 웹 브라우저 상에서 사용자와 동적으로 상호작용할 수 있게 만들어준다. 원래 웹브라우저는 한 번 화면을 출력하면 바꿀 수 없는데, JavaScript를 통해 HTML을 제어할 수 ..
아래 내용은 Youtube 생활코딩(egoing)님의 WEB2 CSS 강좌를 듣고, 공부한 내용을 복습하는 겸 알려드리고자 쓴 내용들입니다. 강의의 자세한 내용을 듣고 싶으시다면? https://www.youtube.com/watch?v=Ok0bBJPtgJI&list=PLuHgQVnccGMAnWgUYiAW2cTzSBywFO75B&index=1 1. CSS의 등장 CSS는 정보 전달이 목적인 HTML이 그대로 정보에만 전념하게 하기 위해 만들어진 언어이다. 따라서 CSS는 HTML의 표현 방식, 꾸미기를 따로 위에서 담당해주며, 사용자(개발자)의 편리성을 위해 코드의 사용의 중복을 막는다. 따라서 효율적이고, 간편하다. 2. CSS의 기본 문법 CSS는 선택자와 속성으로 이루어져있으며 딱 그 두가지밖에 없..
아래 내용은 Youtube 생활코딩(egoing)님의 WEB1 강좌를 듣고, 공부한 내용을 복습하는 겸 알려드리고자 쓴 내용들입니다. 강의의 자세한 내용을 듣고 싶으시다면? https://www.youtube.com/watch?v=tZooW6PritE&list=PL2Mkwvh6s7KI1Wb3COvfpVUZi46XG322g&index=1 1. 웹 공부를 시작하기에 앞서서.. 웹의 기초를 공부하기 위해서 필히 공부해야 할 부분 3가지가 있습니다. 바로 HTML, CSS, JavaScript 인데 셋의 공통점은 모두 언어이며 차이점으로는 HTML, CSS 같은 경우는 모든 웹 개발의 주춧돌이 되며, javascript는 이제 html, css로 닦은 기반을 통해 사이트에서 무언가 움직이게 하는 역할을 합니다...
아마 이 문제 때문에 찾아오신 분들은 시간 초과 때문에 화가 나서 검색해 들어오셨을 텐데 문제 풀이는 생략하고 시간을 줄이는 방법에 대해 설명하겠습니다.ㅠㅠ 우선, class를 만들어 vector로 저장하든, 그냥 각각을 배열로 저장하든, 큰 차이는 없어 보입니다. (물론, vector가 조금 더 느리긴 하나, 깔끔하게 구현된 vector는 정답이 가능합니다) c++의 경우, cin, cout을 마구 쓰면 참가자의 정보(0과 1)를 저장할 때 최대 400만 번 입력을 받아야하기 때문에 무조건 시간초과입니다. 하지만 printf, scanf를 써도 400만번 입력은 2초 안에 정답을 낼 수 없습니다. 그렇기 때문에 cin.tie(0), sync_with_stdio(false)를 쓴 후 cin, cout을 ..
문제 링크 : https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북중 하나이다. 지도의 각 칸은 (r, c)로 나타낼 수 있고, r은 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로 부터 떨어진 칸의 개수이다. 로봇 청소기는 다음 www.acmicpc.net 풀이 시뮬레이션 문제입니다! 이 문제는 조건이 조금 까다로운데, 나는 4가지 조건 중 c,d 번 먼저 해결하려고 하..
문제 링크 : https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도에 쓰여 있는 수가 북쪽부터 남쪽으로, 각 줄은 서쪽부터 동쪽 순서대로 주어진다. 주사위를 놓은 칸에 쓰여 있는 수는 항상 0이다. 지도의 각 칸에 쓰여 있는 수는 10을 넘지 않는 자연수 또는 0이다. 마 www.acmicpc.net 풀이 시뮬레이션 문제입니다! 시뮬레이션 문제답게 이 문제는 주사위를 구현하는 문제이다. 다행히 이 문제에서 주사위..
문제 링크 : https://www.acmicpc.net/problem/15658 15658번: 연산자 끼워넣기 (2) 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1보다 크거나 같고, 4N보다 작거나 같은 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 곱셈(×)의 개수, 나눗셈(÷)의 개수이다. www.acmicpc.net 풀이 브루트 포스 문제입니다! 문제 난이도에 비해 생각보다 쉽지 않아서 많이 고전했던 문제이다. 이 문제는 개인적으로는 그 전 시리즈 문제 (BOJ 14888번 연산자 끼워넣기 https://www.acmicpc.net/problem/148..
문제 링크 : https://www.acmicpc.net/problem/1248 1248번: 맞춰봐 문제 규현이는 멍청하다. 왜냐하면, 1~10까지 수 밖에 모르기 때문이다. 어느 날 규현이 옆을 지나가던 태석이가 규현이를 보고 이렇게 외쳤다. "빵빵!!" 규현이는 "아하!" 하면서 세상에는 빵이란 수도 있구나 했다. 그날 이후로 규현이는 매일 친구들을 볼 때면 "빵빵!!" 거리면서 인사를 했다. 규현이의 친구 중에는 태방이가 있다. 자꾸 규현이가 "빵빵!!" 거릴때 마다 자신을 놀리는 것 처럼 생각했던 태방이는 규현이에게 그건 "빵이 아니고 영이야" www.acmicpc.net 풀이 백트래킹 문제입니다! 이 문제는 서론이 좀 긴데 간단히 압축하자면, -10~10 까지의 정수로 채운 S배열이 있는데, S..
문제 링크 : https://www.acmicpc.net/problem/15661 15661번: 링크와 스타트 첫째 줄에 N(4 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에 S가 주어진다. 각 줄은 N개의 수로 이루어져 있고, i번 줄의 j번째 수는 Sij 이다. Sii는 항상 0이고, 나머지 Sij는 1보다 크거나 같고, 100보다 작거나 같은 정수이다. www.acmicpc.net 풀이 Brute force 문제 입니다! 이 문제는 선수들이 몇명씩 나뉘는지 모르기 때문에 순열로 풀 수 없고 팀을 두 개로 나눈 후 재귀호출을 통해서 선수들을 두 팀에 각각 집어 넣는 과정을 반복합니다. 이 때 재귀호출 함수의 인자로는 0~n까지 선수가 들어가는지에 대한 index와 두 팀의 선수들을 구성하는 ..
suhwanc
'분류 전체보기' 카테고리의 글 목록 (11 Page)