MoonBug

고정 헤더 영역

글 제목

메뉴 레이어

MoonBug

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • Portfolio
      • Toy Project
      • 쥐돌이볼링
    • Trip
    • Cooking
    • Game
    • Diary
      • 잡생각
    • C++
      • Baekjoon
      • Programmers
      • 개념공부
      • STL
    • Study
      • Linux
      • Graphics
      • UNREAL
      • Computer Network
      • 강화학습
      • Algorithm
      • OS

검색 레이어

MoonBug

검색 영역

컨텐츠 검색

전체 글

  • < 백준 BaekJoon : 9184번 신나는 함수 실행> C++

    2024.01.27 by J2on

  • < 백준 BaekJoon : 14889번 스타트와 링크 > C++

    2024.01.26 by J2on

  • STL :: algorithm - next_permutation() (순열, 조합)

    2024.01.25 by J2on

  • < 백준 BaekJoon : 14888번 연산자 끼워넣기 > C++

    2024.01.25 by J2on

  • < 백준 BaekJoon : 20920번 영단어 암기는 괴로워 > C++

    2024.01.24 by J2on

  • STL :: pair ( 두 데이터 타입을 쌍으로 묶기 )

    2024.01.24 by J2on

  • STL :: map ( 마치 vector에 pair를 저장한 것 같은 )

    2024.01.24 by J2on

  • STL :: Algorithm - sort() (정렬)

    2024.01.24 by J2on

< 백준 BaekJoon : 9184번 신나는 함수 실행> C++

> https://www.acmicpc.net/problem/9184 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 동적계획 알고리즘에 대해 이해가 있다면 크게 어려운 문제는 아닙니다. 이미 점화식 구성에 대한 힌트를 다 알려주고 있어서 조건만 잘 맞추시면 됩니다. > #include using namespace std; int wTable[21][21][21]; void fillTable() { for (int i = 0; i < 21; i++) { for (int j = 0; j < 21; j++) { fo..

C++/Baekjoon 2024. 1. 27. 02:52

< 백준 BaekJoon : 14889번 스타트와 링크 > C++

> https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net 이것도 next_permutation()을 이용하면 쉽게 활용할 수 있다. vector에 사람 수의 절반만큼 0, 또 절반만큼 1을 넣고 next_permutation을 돌리면 모든 경우의 팀 선정을 볼 수 있다. 이를 이용해서 모든 조합을 다 더해보면 알 수 있다. > #include #include #include using namespace std; int main() { int num; cin >> num;..

C++/Baekjoon 2024. 1. 26. 22:42

STL :: algorithm - next_permutation() (순열, 조합)

next_permutation은 순열과 조합에서 사용하기 좋은 함수 #include algorithm 헤더를 통해 사용할 수 있다. next_permutaion은 오름차순으로 정렬된 콘테이너에 대해 하나씩 이동하며 내림차순으로 변경한다. 반복문에서 사용하면 이렇게 매 반복마다 변하는 과정을 보여준다. 이를 바탕으로 순열과 조합에서 사용할 수 있다. do{ // 순열을 통해 하고싶은 동작 } while (next_permutation(oprVec.begin(), oprVec.end())); 이 형태로 사용하게 되면 next_permutation이 정렬하는 과정에서는 매 반복마다 true를 return하지만, 끝나면 false를 return해서 유용하게 사용할 수 있다. back tracting에서 유용하게..

C++/STL 2024. 1. 25. 22:56

< 백준 BaekJoon : 14888번 연산자 끼워넣기 > C++

> https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 곱 www.acmicpc.net 연산자들의 모든 조합을 만들고, 결과 값을 만들며 확인해보는 문제입니다. 핵심은 next_permutation()을 이용한 조합 찾기라고 생각합니다. 오름차순으로 정렬된 컨테이너를 모든 경우의 수를 돌려가며 내림차순으로 정렬하는 동작을 합니다. 마지막으로 정렬이 되었을 때, false를 return하므로 do while 문에서 사용하기..

C++/Baekjoon 2024. 1. 25. 21:47

< 백준 BaekJoon : 20920번 영단어 암기는 괴로워 > C++

> https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net map을 활용해서 first에 단어, second에 등장 횟수를 저장합니다. 이렇게 모든 단어를 확인한 후, map은 이미 순서가 오름차순으로 정렬되어 있기 때문에 vector로 이동시켜 새로 정렬한다. 이 때, sort()에 새로운 comp 함수를 정의해서 풀이한다. > #include #include #include #in..

C++/Baekjoon 2024. 1. 24. 18:58

STL :: pair ( 두 데이터 타입을 쌍으로 묶기 )

Pair의 기본 개념 두 값의 묶음: 두 개의 값을 하나로 묶어서 저장. 첫 번째 값은 first에, 두 번째 값은 second에 저장 map의 각 element를 pair로 받아올 수 있다. 기본 사용법 선언과 초기화 cppCopy code #include std::pair myPair; // 빈 pair 선언 값 할당 cppCopy code myPair.first = 42; myPair.second = "Hello"; 생성자를 통한 초기화 cppCopy code std::pair myPair(42, "Hello"); 주요 기능 원소 접근 cppCopy code std::cout

C++/STL 2024. 1. 24. 18:54

STL :: map ( 마치 vector에 pair를 저장한 것 같은 )

Map의 기본 개념 키-값 쌍 저장: 키와 값의 쌍을 저장하는 연관 컨테이너. 각 키는 고유하며, 키에 대응하는 값이 저장됨. 자동 정렬: 키를 기준으로 자동으로 정렬. 기본적으로는 오름차순 정렬 빠른 검색 및 삽입: 이진 검색 트리로 구현되어 있어 빠른 검색 및 삽입 속도 기본 사용법 선언과 초기화 cppCopy code #include std::map myMap; // 빈 map 선언 원소 삽입 cppCopy code myMap[1] = "One"; myMap[2] = "Two"; myMap[3] = "Three"; 원소 접근 cppCopy code std::cout

C++/STL 2024. 1. 24. 18:50

STL :: Algorithm - sort() (정렬)

sort() 함수는 algorithm 헤더를 이용해서 사용할 수 있다. 기본적으로 sort(vec.begin(), vec.end()); 이 형태로 사용할 수 있는데, 내가 원하는 상태로 정렬할 수 있다. bool comp(int a, int b){ return a > b; } 여기서 True를 return하게 되면 a가 앞에 정렬된다. true면 두 parameter의 순서대로, false면 두 parameter의 순서를 바꾼다고 생각하자.

C++/STL 2024. 1. 24. 18:42

추가 정보

인기글

최신글

페이징

이전
1 ··· 5 6 7 8 9 10 11 ··· 21
다음
TISTORY
MoonBug © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바