c++
-
입력(C++ cin)기본(Basic) 2021. 1. 6. 12:01
대부분의 대회에서는 입력을 읽고 출력을 쓸 때 표준 스트림을 사용한다. C++의 표준 스트림은 입력에 대해서는 cin이고, 출력에 대해서는 cout이다. scanf, printf와 같은 C 언어 함수도 사용할 수 있다. 프로그램의 입력은 보통 공백 문자나 개행 문자로 구분된 문자열 및 수로 이루어진다. 이러한 입력을 cin 스트림으로 읽어 들이려면 다음과 같이 하면 된다. int a, b; string x; cin >> a >> b >> x; 입력을 구성하는 각 원소 사이에 적어도 한 개의 공백 문자나 개행 문자가 존재할 경우, 이러한 형태의 코드는 항상 문제없이 동작한다. 예를 들어 이 코드는 다음과 같은 두 가지 형태의 입력을 모두 읽어 들일 수 있다. 123 456 monkey
-
백준 11053번: 가장 긴 증가하는 부분 수열다이나믹프로그래밍(DP) 2020. 11. 26. 18:30
https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. www.acmicpc.net 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. 히스토리 2020-03-22 ..
-
백준 1547번: 공시뮬레이션(Simulation) 2020. 2. 6. 16:55
https://www.acmicpc.net/problem/1547 1547번: 공 첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것을 의미한다. 컵을 이동시키는 중에 공이 컵에서 빠져나오는 경우는 없다. X와 Y의 값은 3보다 작거나 같고, X와 Y가 같을 수도 있다. www.acmicpc.net swap 을 사용하여 현재 공이 있는 위치를 찾는 문제 키워드 - 구현, 시뮬레이션 Source #include #include #include #include #include #include #include #include #include #include ..
-
백준 1335번: 트럭큐(Queue) 2020. 2. 6. 16:53
https://www.acmicpc.net/problem/13335 13335번: 트럭 문제 강을 가로지르는 하나의 차선으로 된 다리가 하나 있다. 이 다리를 n 개의 트럭이 건너가려고 한다. 트럭의 순서는 바꿀 수 없으며, 트럭의 무게는 서로 같지 않을 수 있다. 다리 위에는 단지 w 대의 트럭만 동시에 올라갈 수 있다. 다리의 길이는 w 단위길이(unit distance)이며, 각 트럭들은 하나의 단위시간(unit time)에 하나의 단위길이만큼만 이동할 수 있다고 가정한다. 동시에 다리 위에 올라가 있는 트럭들의 무게의 합은 다리의 최 www.acmicpc.net 큐를 이용하면 쉽게 풀리는 문제 L -> 다리가 견딜수 있는 무게 W -> 다리의 길이 키워드 - queue Source #include..
-
완전탐색 > 모의고사프로그래머스(Programmers) 2020. 2. 6. 16:30
https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 | 프로그래머스 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, programmers.co.kr 키워드 - 구현, 완전탐색 Source #include #include #..
-
2017 팁스타운 > 짝지어 제거하기프로그래머스(Programmers) 2020. 2. 6. 16:25
https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 | 프로그래머스 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. 예를 들 programmers.co.kr 1. 문제 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가..
-
완전탐색 > 소수 찾기프로그래머스(Programmers) 2020. 2. 5. 15:21
https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 | 프로그래머스 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. 013은 0, 1, 3 숫자가 적힌 종이 programmers.co.kr 에라토스테네스의 체를 사용하던지 속도가 느리다면 메모제이션이나 DP를 사..