[백준 알고리즘] 4447번 : 좋은놈 나쁜놈, c++ https://www.acmicpc.net/problem/4447 4447번: 좋은놈 나쁜놈 비키니시티에는 초능력을 가진 수퍼 히어로들로 바글바글하다. 스폰지밥과 패트릭은 주어진 문자열로 좋은놈과 나쁜놈을 골라내려 한다. 스폰지밥: 우와, 문자열에서 강한 힘이 느껴지는데! www.acmicpc.net c++로 백준 4447번을 풀어보겠다. 1. 문자열의 g, b 개수를 세어 그에 맞는 출력값을 출력한다. 코드는 다음과 같다. C++ 2022.05.12
[백준 알고리즘] 1764번 : 듣보잡, c++ https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net c++로 백준 1764번 문제를 풀어보겠다. - 시간초과 , 다시 시도하기 - 코드는 다음과 같다. C++ 2022.05.11
[백준 알고리즘] 10824번 : 네 수, c++ https://www.acmicpc.net/problem/10824 10824번: 네 수 첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000) www.acmicpc.net c++로 백준 알고리즘 10824번 문제를 풀어보겠다. 1. 문자열 A, B, C, D를 입력받는다. 2. 각각 두개씩 문자열의 더해 합친다. 3. 새로운 문자열 A의 인덱스에 하나씩 for문을 통해 접근하며 int형의 숫자로 변환한다. 4. 새로운 문자열 C의 인덱스에 하나씩 for문을 통해 접근하며 int형의 숫자로 변환한다. 5. 두 수의 합을 구해 출력한다. 이 문제에서 중요한 점: 계산 중에 int형의 범위를 벗어나게 되므로, zero와 sum 변수의 데이터 타입을 long .. C++ 2022.05.10
[백준 알고리즘] 1918번 : 후위 표기식, c++ https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 알파벳 대문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 www.acmicpc.net c++로 백준 1918번 문제를 풀어보겠다. 문제 수식은 일반적으로 3가지 표기법으로 표현할 수 있다. 연산자가 피연산자 가운데 위치하는 중위 표기법(일반적으로 우리가 쓰는 방법이다), 연산자가 피연산자 앞에 위치하는 전위 표기법(prefix notation), 연산자가 피연산자 뒤에 위치하는 후위 표기법(postfix notation)이 그것이다. 예를 들어 중위 표기법으로 표현된 a+b는 .. C++ 2022.05.09
[백준 알고리즘] 1068번 : 트리, c++ https://www.acmicpc.net/problem/1068 1068번: 트리 첫째 줄에 트리의 노드의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 0번 노드부터 N-1번 노드까지, 각 노드의 부모가 주어진다. 만약 부모가 없다면 (루트) -1이 주어진다 www.acmicpc.net c++로 백준 1068번 문제를 풀어보겠다. 문제 트리에서 리프 노드란, 자식의 개수가 0인 노드를 말한다. 트리가 주어졌을 때, 노드 하나를 지울 것이다. 그 때, 남은 트리에서 리프 노드의 개수를 구하는 프로그램을 작성하시오. 노드를 지우면 그 노드와 노드의 모든 자손이 트리에서 제거된다. 예를 들어, 다음과 같은 트리가 있다고 하자. 현재 리프 노드의 개수는 3개이다. (초록색 색칠된 .. C++ 2022.05.08
[백준 알고리즘] 5176번 : 대회 자리, c++ https://www.acmicpc.net/problem/5176 5176번: 대회 자리 이번 ACM-ICPC 대회의 자리는 참가자들이 직접 정한다. 참가자들은 예비 소집일에 자신이 원하는 자리를 미리 정해놓았고, 대회 당일에 어제 적어놓은 자리에 앉으면 된다. 여러명이 같은 자리를 www.acmicpc.net c++로 백준 5176번 문제를 풀어보겠다. 문제 이번 ACM-ICPC 대회의 자리는 참가자들이 직접 정한다. 참가자들은 예비 소집일에 자신이 원하는 자리를 미리 정해놓았고, 대회 당일에 어제 적어놓은 자리에 앉으면 된다. 여러명이 같은 자리를 적어논 경우에는, 먼저 도착한 사람이 그 자리에 앉게되고, 앉지 못한 사람은 대회에 참가할 수 없다. 각 사람이 선호하는 자리가 주어졌을 때, 대회에 참가.. C++ 2022.05.08
[백준 알고리즘] 2399번 : 거리의 합, c++ https://www.acmicpc.net/problem/2399 2399번: 거리의 합 첫째 줄에 n(1 ≤ n ≤ 10,000)이 주어진다. 다음 줄에는 x[1], x[2], x[3], …, x[n]이 주어진다. 각각은 0 이상 1,000,000,000 이하의 정수이다. www.acmicpc.net c++로 백준 2399번 문제를 풀어보겠다. 문제 수직선에 n개의 점이 찍혀 있다. 각각의 점의 x좌표가 주어졌을 때, n2개의 모든 쌍에 대해서 거리를 더한 값을 구하는 프로그램을 작성하시오. 즉, 모든 i, j에 대해서 |x[i] - x[j]|의 합을 구하는 것이다. 입력 첫째 줄에 n(1 ≤ n ≤ 10,000)이 주어진다. 다음 줄에는 x[1], x[2], x[3], …, x[n]이 주어진다. 각각.. C++ 2022.05.07
[백준 알고리즘] 9366번 : 삼각형 분류, c++ https://www.acmicpc.net/problem/9366 9366번: 삼각형 분류 입력의 첫 줄에는 테스트케이스의 개수 T(1 C++ 2022.05.05
[백준 알고리즘] 1822번 : 차집합, c++ https://www.acmicpc.net/problem/1822 1822번: 차집합 첫째 줄에는 집합 A의 원소의 개수 n(A)와 집합 B의 원소의 개수 n(B)가 빈 칸을 사이에 두고 주어진다. (1 ≤ n(A), n(B) ≤ 500,000)이 주어진다. 둘째 줄에는 집합 A의 원소가, 셋째 줄에는 집합 B의 원소 www.acmicpc.net c++로 백준 1822번 문제를 풀어보겠다. 문제 몇 개의 자연수로 이루어진 두 집합 A와 B가 있다. 집합 A에는 속하면서 집합 B에는 속하지 않는 모든 원소를 구하는 프로그램을 작성하시오. 입력 첫째 줄에는 집합 A의 원소의 개수 n(A)와 집합 B의 원소의 개수 n(B)가 빈 칸을 사이에 두고 주어진다. (1 ≤ n(A), n(B) ≤ 500,000)이 주.. C++ 2022.05.03
[백준 알고리즘] 17094번 : Serious Problem, c++ https://www.acmicpc.net/problem/17094 17094번: Serious Problem 2의 등장횟수가 더 많다면 2를 출력하고, e의 등장횟수가 더 많다면 e를 출력한다. 등장횟수가 같다면 "yee"를 출력한다. (큰 따옴표 제외) www.acmicpc.net c++로 백준 17094번 문제를 풀어보겠다. 문제 2와 e는 발음이 비슷해, 둘을 섞어서 말하면 듣는 사람을 짜증나게 만들 수 있다. 지민이는 이 점을 이용해 은수를 미치게 하고 있다. 은수를 위해 지민이가 말한 문자열 s가 주어질때, 2의 등장 횟수가 더 많은지, e의 등장 횟수가 더 많은지 도와주자. 입력 첫 줄에 문자열 s의 길이가 주어진다. 둘째 줄에 문자열 s가 주어진다. s의 길이는 1 이상 105 이하이며, .. C++ 2022.04.10