본문 바로가기
728x90

C++18

[백준] 10814. 나이순 정렬 <C++> https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 � www.acmicpc.net pair와 정렬의 연습 문제이다. > pair 사용법 #include #include #include using namespace std; bool comp(pair a, pair b){ return a.first > n; for(int i=0; i> old >>.. 2020. 9. 4.
[백준] 11650. 좌표 정렬하기(1, 2) <C++> www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net 간단한 정렬 문제이다. pair를 사용한 정렬 연습에 적절한 문제! - pair의 간단한 사용 방법 [C++] pair Pair 란? - 두 객체를 하나로 묶어주는 클래스이다. (좌표 등을 표현하기에 적절하다.) - 헤더에 존재한다. Pair의 기본 사용 방법 선언 pair p; - 묶어줄 두 값의 데이터 타.. korean-otter.tistory.com .. 2020. 9. 4.
[C++] pair Pair 란? - 두 객체를 하나로 묶어주는 클래스이다. (좌표 등을 표현하기에 적절하다.) - 헤더에 존재한다. Pair의 기본 사용 방법 선언 pair p; - 묶어줄 두 값의 데이터 타입을 넣어주고, 변수 명을 지정한다. 입력, 값 할당 cin >> x >> y; p = make_pair(x, y); make_pair(변수1, 변수2): 변수1, 변수2를 묶어준다(pair를 만들어준다). - pair로 만든 변수에는 값을 바로 입력받을 수 없다. 그래서 두 변수에 입력받고 난 후에 묶어주어야 한다. 출력 cout 나이순 정렬 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞.. 2020. 9. 4.
[백준] 1920. 수 찾기 <C++> https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안�� www.acmicpc.net 이 문제는 시간초과를 위한 문제이다. 퀵정렬을 이용해 정렬하고, 이분탐색으로 풀어야한다. 그리고 C++언어를 이용해 cin, cout을 이용해도 시간초과가 발생하기 때문에 cin, cout의 시간을 줄여줄 명령어도 사용해주어야한다. //cin, cout의 시간을 줄여주는 명령어 cin.tie(NULL); ios_base::sync_with_stdio(0.. 2020. 7. 28.
[백준] 17615. 볼 모으기 <C++> https://www.acmicpc.net/problem/17615 17615번: 볼 모으기 첫 번째 줄에는 볼의 총 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 다음 줄에는 볼의 색깔을 나타내는 문자 R(빨간색 볼) 또는 B(파란색 볼)가 공백 없이 주어진다. 문자열에는 R 또는 B 중 한 종류만 주�� www.acmicpc.net 음.. 무언가 규칙이 있을 것 같기는 한데 떠오르지는 않았다... 그래서 정말 단순하게 알고리즘을 생각했다. 파란색들을 왼쪽으로 다 모을 때, 오른쪽으로 모을 때 빨간색들을 왼쪽으로 다 모을 때, 오른쪽으로 모을 때 (코드에서 정말로 배열의 각 방을 스왑하거나 하지는 않는다. 개수를 셀 뿐이다.) 이렇게 네 가지의 경우를 모두 구해 최소값을 구하도록 만들었다. RB.. 2020. 6. 20.
[백준] 9093. 단어 뒤집기 <C++> https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 문제 문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다. 입력 첫째 줄에 테스트 케이스의 www.acmicpc.net 처음엔 스택을 쓸까 했는데 굳이 코드만 길어지고 덜 효율적일 것 같아 배열만 이용하였다. #include #include using namespace std; int n, sw; string str; int main() { cin>>n; cin.ignore(); // 버퍼 무시 for(int k=0; k 2020. 6. 3.
4. 함수(2) 출력 함수 : printf() 이번 시간에는 변수를 이용한 출력, 그리고 출력 값 자릿수 지정에 대한 것들을 이어서 해보겠습니다! 여러 예시들과 함께 볼 것이므로 꼭! 함께 실행해 보시길 추천드립니다! 이전 글과 함께 보는 것을 추천! 2020/02/19 - [알고리즘/차례대로 배우는 문법(C)] - 함수(1) 우선 변수를 이용한 출력을 해보겠습니다! #include int main(){ int i=123; float f=12.345; char c='A'; printf("정수형 변수 i = %d\n실수형 변수 f = %f\n문자형 변수 c = %c", i, f, c); } /*실행 결과*/ 정수형 변수 i = 123 실수형 변수 f = 12.345000 문자형 변수 c = A 이전 글의 형식 문자열을 이.. 2020. 2. 26.
3. 함수(1) 함수에 들어가기 이전에! 첫 번째 글에서도 보았던 함수이자, C 프로그램을 작성하며 가장 많이 사용하게 될 함수! 진입점 함수가 있습니다. main함수이죠! 진입점 함수 : main() int main(){ return 0; } 진입점 함수란, - 프로그램이 처음 시작될 때 호출되는 함수로 반드시 필요하다. - main 함수가 없거나 여러 개라면 잘못된 프로그램이다. - int 또는 void를 이용하여 리턴할 수 있음. - int main함수의 리턴값은 두 종류가 있는데, 정상 종료와 비정상 종료이다. int main(){ return 0; //정상 종료 } int main(){ return 1; //비정상 종료 } 이렇게 0을 리턴한다면 정상적으로, 1을 리턴한다면 비정상적으로 종료가 된다. 출력 함수.. 2020. 2. 19.
2. C프로그램의 구성 요소들 목차 1. C 프로그램의 구성요소 ◆ C 프로그램의 구성요소 ◆ ▶ 변수 (variable) - 말 그대로 변하는 수입니다. - 프로그램에서 사용하는 데이터를 일시적으로 담아두는 공간이죠. 또한 사용할 데이터의 종류에 따라 여러 가지의 타입이 존재합니다. 여러 타입에 따라 담을 수 있는 byte의 양(정보의 양)도 다릅니다. 표 준 자 료 형 정수형 short(2) int(4) long(4) long long(8) 실수형 float(4) double(4) long double(8) x 문자형 char(1) x x x /* ++ 왜 다들 byte가 다르고 난리일까요? 그냥 크게 해서 다들 똑같이 쓰면 되는 거지ㅡㅡ...;; - 요즘 컴퓨터는 64bit나 32bit를 사용하죠? 이 bit가 의미하는 것은 컴.. 2019. 12. 23.
728x90