백준에서 간단한 문제를 풀던 중 C++로 알고리즘을 해결할 때 알아두면 유용한 정보를 찾아 기록해놓기로 했다. 4458번: 첫 글자를 대문자로 첫째 줄에 줄의 수 N이 주어진다. 다음 N개의 줄에는 문장이 주어진다. 각 문장에 들어있는 글자의 수는 30을 넘지 않는다. 모든 줄의 첫 번째 글자는 알파벳이다. www.acmicpc.net getline() 입력받기 C++에서 스트링을 입력받을 땐 std::cin을 이용해 입력받는다. 하지만 입력받는 스트링이 공백을 포함할 때, 예를 들어 "Hello World C++"라는 스트링을 하나의 변수에 저장하기 위해선 getline()을 이용해 입력받아야한다. string s; getline(cin, s); 하지만 getline이 호출되기 전 받는입력이 있다면, ..
https://www.acmicpc.net/problem/11651 11651번: 좌표 정렬하기 2 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net #include #include #include using namespace std; bool compare(const pair&i, const pair&j) { if (i.second == j.second){ // y(두번째)가 같은 경우 i(첫번째) 오름차순 return i.first < j.first; } else return i.se..
https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net #include #include using namespace std; // 다음 단어와 다르면 find한다. bool groupCheck(string s){ for(int i = 0; i < s.length() - 1; i++){ // if(s[i] == s[i+1]) continue; if(s[i] != s[i+1]){ // 같은게 있다면 false for(int..
https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net #include #include #include using namespace std; void print(stack &s){ while (!s.empty()){ cout
https://www.acmicpc.net/problem/1748 1748번: 수 이어 쓰기 1 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. www.acmicpc.net #include #include using namespace std; int solv(int num){ long res = 0; while(1){ if(num < 10){ res += num; return res; } int div = 10; // 입력받은 수의 길이를 측정 int inputMinusNum = 1; // 999일 경우 (999 - 100) * 길이(3) 을 카운트 while((num / div) != 0){ div *= 10; } div /= 10; string length_div = to_string..
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개의 수들이 주어지는데, 이 수들 www.acmicpc.net 코드 #include #include using namespace std; void BinaryExist(int *arr, int low, int high, int findValue){ if (low > high){ cout arr[mid]) return BinaryExist(arr, mid+1, high, findValue); else if (fi..
https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net 코드 #include using namespace std; int main(){ int arr[1002]; int N, K, res, count = 0, del = 2; cin >> N >> K; for(int i = 0; i < N; i++){ arr[i + 1] = i + 1; } while(count != K){ for(int i = 1; i*del
- Total
- Today
- Yesterday
- 프로그래머스
- 환경설정
- 백준
- 오류
- JSP
- 인턴
- SQL
- 이클립스
- 오라클
- CSS
- Java
- HeidiSQL
- 데이터베이스
- JVM
- svn
- 개발용어
- Thymeleaf
- 부트스트랩
- C
- Open API
- CS
- 넥사크로
- C++
- 국비교육
- 스프링
- 네트워크
- 스프링부트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |