Loading...

C++ 알고리즘 기초17 -문자열 입력받기, 문자열 길이 구하기(length), 공백을 포함한 문자열 입력받기(getline)-

1. 공백없는 문자열 입력받기 헤더를 사용하고, string 자료형을 선언한 변수에 cin 함수로 공백이 없는 문자열을 입력받는다. #include #include using namespace std; int main() { string str; cin >> str; cout > hello // 출력 hello 다른 언어에서 인덱싱 하는 것처럼 부분 문자들을 참조하기 위한 인덱싱이 가능함 string str = "banana"; cout hello // 출력 5 3. getline() cin함수가 space를 기준으로 입력을 받는데, 만약 space를 포함한 문자열을 하나의 문자열로 입력받고 싶다면, 예를 들어 "hello world"가 입력으로 들어올때, 이를 하나의 문자열로 받고 싶다면, getlin..

2023. 5. 28. 00:09

SQL 코딩테스트 복기 -문자열 부분수정(마스킹)하는 방법(concat + substr)-

1. 문자열 바꾸기 문자열의 앞 두글자를 **로 대체해서 출력하라고 하면 어떻게 해야할까? 구체적으로 위와 같이 주어졌을때, 각 문자열 값들의 앞 두글자를 **로 바꾸고 싶다. select concat('**',substr(name,3)) as user_id from test; concat과 substr 함수를 이용해서 바꿀 수 있다 아니 모르면 못풀잖아 2. concat concat(str1,str2,str3,...) 연결할 문자열들을 나열해서, 하나의 문자열로 만들어준다 3. substr substr(str,pos,len) str을 pos부터 시작해서 len만큼 추출 pos는 추출할 문자열 str의 시작 위치 index index는 1부터 시작하며 다음과 같이 음수 인덱스도 가능하다. len은 생략가..

2023. 5. 16. 01:22

문자열 그리디 연습1 - 최소 횟수로 교환해서 두 문자열 같게 만들기

1. 문제 13413번: 오셀로 재배치 (acmicpc.net) 13413번: 오셀로 재배치 로봇을 좋아하는 세희는 로봇동아리에서 카메라와 센서, 라즈베리 파이, 집게발을 이용해 로봇을 완성하였다. 이 로봇을 통해서 오셀로 재배치라는 작업을 하려고 한다. 오셀로 말은 앞면이 검 www.acmicpc.net 2. 풀이1 문자열의 문자를 바꾸는 방법이 2가지 1) B는 W로, W는 B로 뒤집기 2) 서로 다른 두 위치의 문자를 교환하기 이런 상황에서 두 문자열이 서로 같게 만드는, 최소 횟수로 교환하는 방법을 찾을려면? 탐욕적으로 생각해보면 생각보다 간단한 문제다 두 문자열을 처음부터 동시에 순회해서, 두 문자가 서로 같다면 그대로 넘어가면 될거고 두 문자가 서로 다른 순간에 교환을 해야할거임 0번째는 W와..

ABC 301 복기.. C - AtCoder Cards (문자열 그리디 알고리즘)

1. 문제 C - AtCoder Cards C - AtCoder Cards AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online. atcoder.jp 2. 풀이 문제는 요약하자면 두 문자열이 주어지는데, @는 a,t,c,o,d,e,r중 하나로 바꿀 수 있다. 두 문자열을 적절하게 배열시켰을때, 서로 같게 만들 수 있느냐? 불가능하느냐? 딱 봤을때는 도저히 모르겠더라.. 최대 길이가 2*10^5인게 압박 브루트포스로 하면 당연히 시간초과일거고 근데 계속 보면서 생각해보니까 그리디적으로 사고했을때 두 문자열의 구성이 같으면 결국에 서로 같게 만들 수 ..

C++ 알고리즘 기초7 -문자,문자열 입력받기-

1. 문자 1개 입력 문자 1개 입력은 char 변수를 선언하고, cin을 이용해 넣어준다 #include using namespace std; int main() { char c; cin >> c; cout > s; cout > a >> b >> c;로 선언하면 a에 50 b에 : c에 60이 들어간다. #include using namespace std; int main() { int a, b; char c; cin >> a >> c >> b; cout [C++] 표준 입력 함수 cin, cin.get(), cin.getline() 1. cin => 에 존재 => 표준 입력 버퍼에서 개행 문자를 제외한 값을 가져옴 => 공백, 개행 무시 => 개행 키보드 버퍼에 남겨둠 => space 단위로 끊어서 ..

C++ 알고리즘 기초3 -변수와 자료형 기본-

1. 변수와 자료형 변수를 선언하는 것은 파이썬과 마찬가지로 a = 5; 처럼 간단하게 가능 하지만 C++에서는 자바처럼 변수의 적절한 자료형(type)을 선언해줘야한다. int a; a = 5; cout