[백준 9081번] 파이썬 - 단어 맞추기
백준 9081 - 단어 맞추기 시간 제한 1초, 메모리 제한 128MB # 조건 BEER라는 단어를 이루는 알파벳들로 만들 수 있는 단어들을 사전 순으로 정렬하게 되면 아래와 같이 된다. BEER BERE BREE EBER EBRE EEBR EERB ERBE EREB RBEE REBE REEB 이러한 순서에서 BEER 다음에 오는 단어는 BERE가 된다. 이와 같이 단어를 주면 그 단어를 이루는 알파벳들로 만들 수 있는 단어들을 사전 순으로 정렬할 때에 주어진 단어 다음에 나오는 단어를 찾는 프로그램을 작성하시오. 입력 입력의 첫 줄에는 테스트 케이스의 개수 T (1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 하나의 단어가 한 줄로 주어진다. 단어는 알파벳 A~Z 대문자로만 이루어지며 항상 공백이..
2023.12.02
no image
[C++] string 클래스를 이용한 문자열 사용
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com string 클래스 개요 C-스트링은 C언어에서 사용해오던 전통적인 문자열, '\0'로 끝나는 문자 배열을 문자열로 취급하는 방법 string은 C++ 표준 라이브러리에서 제공하는 클래스, 문자열을 객체로 다룬다. string은 문자열을 저장하는 버퍼와 함께, 문자열을 다루는 다양하고 유용한 함수와 연산자들을 멤버로 가지고 있다. #include using namespace st..
2023.12.01
[C++] this 포인터
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com this this는 객체 자신에 대한 포인터로서 클래스 멤버 함수 내에서만 사용. 전역 변수, 지역 변수 둘 다 아니다. 정확히 말하면 객체의 멤버 함수가 호출될 떄, 컴파일러에 의해 보이지 않게 전달되는 객체에 대한 주소 class Circle { int radius; public: Circle() { this->radius = 1; } Circle(int radius) { t..
2023.12.01
[백준 12931번] 파이썬- 두 배 더하기
백준 12931 - 두 배 더하기 시간 제한 2초, 메모리 제한 512MB # 조건 모든 값이 0으로 채워져 있는 길이가 N인 배열 A가 있다. 영선이는 다음과 같은 두 연산을 수행할 수 있다. 배열에 있는 값 하나를 1 증가시킨다. 배열에 있는 모든 값을 두 배 시킨다. 배열 B가 주어졌을 떄, 배열 A를 B로 만들기 위한 연산의 최소 횟수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 배열의 크기 N이 주어진다.(1 1: arrB[i] //= 2 flag = True if flag: cnt += 1
2023.12.01
[백준 16935번] 파이썬 - 배열 돌리기3
백준 16935 - 배열 돌리기3 시간 제한 2초, 메모리 제한 512MB # 조건 크기가 N×M인 배열이 있을 때, 배열에 연산을 R번 적용하려고 한다. 연산은 총 6가지가 있다. 1번 연산은 배열을 상하 반전시키는 연산이다. 1 6 2 9 8 4 → 4 2 9 3 1 8 7 2 6 9 8 2 → 9 2 3 6 1 5 1 8 3 4 2 9 → 7 4 6 2 3 1 7 4 6 2 3 1 → 1 8 3 4 2 9 9 2 3 6 1 5 → 7 2 6 9 8 2 4 2 9 3 1 8 → 1 6 2 9 8 4 2번 연산은 배열을 좌우 반전시키는 연산이다. 1 6 2 9 8 4 → 4 8 9 2 6 1 7 2 6 9 8 2 → 2 8 9 6 2 7 1 8 3 4 2 9 → 9 2 4 3 8 1 7 4 6 2 3 ..
2023.12.01
[백준 1527번] 금민수의 개수
백준 1527 - 금민수의 개수 시간 제한 2초, 메모리 제한 128MB # 조건 은민이는 4와 7을 좋아하고, 나머지 숫자는 싫어한다. 금민수는 어떤 수가 4와 7로만 이루어진 수를 말한다. A와 B가 주어졌을 때, A보다 크거나 같고, B보다 작거나 같은 자연수 중에 금민수인 것의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. A는 1보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다. B는 A보다 크거나 같고, 1,000,000,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 A보다 크거나 같고, B보다 작거나 같은 자연수 중에 금민수인 것의 개수를 출력한다. # 접근 방법 최대 범위가 10억이기 때문에 하나하나 확인할 수는 없다. 따라서, 중복..
2023.12.01
[C++] 동적 메모리 할당 및 반환
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 일반적으로 개발자는 프로그램 작성 단계에서 필요한 메모리를 확보하기 위해 변수, 객체, 배열을 정적으로 선언한다. 하지만, 사용자의 마음에 따라 달라지는 문서 편집기 등은 필요한 메모리를 프로그램 작성 단계에서 모두 선언하는 것은 불가능하다. 따라서, 이런 유형의 응용PR을 위해, 실행 중에 필요한 만큼 메모리를 할당받고 필요 없을 때 반환하는 '동적 메모리 할당/반환 메커니즘'..
2023.11.30
no image
[C++] 객체 포인터와 객체 배열
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 객체 포인터 C++에서 객체를 다루기 위해 객체에 대한 포인터 변수를 선언하고, 이 포인터 변수로 객체의 멤버 변수를 읽고 값을 쓰거나 멤버 함수를 호출한다. Circle donut; double d = donut.getArea(); Circle* p; // 객체에 대한 포인터 변수 선언 p = &donut; // 포인터 변수에 객체 주소 지정 Circle* p = &donut ..
2023.11.30
no image
[C++] 포인터
황기태 저자의 명품 C++ Programming 개정판을 읽고 학습한 내용을 정리한 포스트입니다! https://search.shopping.naver.com/book/catalog/32436115747 C++ Programming : 네이버 도서 네이버 도서 상세정보를 제공합니다. search.shopping.naver.com 포인터 C/C++ 언어에서 포인터(pointer)는 실행 중 메모리의 주소 값이다. 주소(포인터)를 이용하여 메모리에 직접 값을 쓰거나 메모리로부터 값을 읽어올 수 있다. 변수의 메모리 주소 변수란 프로그램 내에서 사용하는 이름 각 변수마다 메모리 공간이 할당 된다. int n; n = 3; 위 코드에서 n은 정수를 저장할 메모리 공간에 대한 이름 그러나 값 3이 메모리 몇 번지..
2023.11.30