문자열

    [C++] 백준 5430번 AC

    [C++] 백준 5430번 AC

    5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 문자열 파싱, 자료구조를 이용해서 풀 수 있는 문제. 디테일에서 놓친 부분들이 많아서 틀렸습니다를 많이 받았다. 문제풀이 조건을 다음과 같이 해석해서 풀었다. '덱'을 사용해서 풀고, 현재 방향이 front인지 back인지를 저장한다. 시작의 경우 방향은 front가 된다. 'R' 명령어가 들어왔을 경우 : front / back 방향을 반대로 전환한다. 'D' 명령어가 들어왔을 경우 : 현재 덱에서 방향에 있는 수를 하나 pop한다. 이 때 덱이 비어있으면 error가 발생하도록 한다. 코드 전문 /* * 백준 54..

    [C++] 프로그래머스 2021 KAKAO BLIND RECRUITMENT Level 1 신규 아이디 추천

    [C++] 프로그래머스 2021 KAKAO BLIND RECRUITMENT Level 1 신규 아이디 추천

    코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr 문자열 / 구현 문제. Level 1은 크게 어려운 문제는 아니라고 생각했다. 막상 코딩 테스트에서 만나면 시간을 많이 잡아먹을 것 같다. 문제풀이 문제에 나온 그대로, 다음과 같은 순서로 구현해주면 된다. 아이디의 길이 : 3 ~ 15 소문자, 숫자, -, _, . 사용 가능. 마침표(.)는 처음과 끝에 사용 불가 마침표는 연속 사용 불가 단계를 통해서 규칙에 맞는 새로운 아이디 추천 1. 모든 대문자를 소문자로 치환. 2. 소문자, 숫자, -, _, ..

    [C++] 백준 1541번 잃어버린 괄호

    [C++] 백준 1541번 잃어버린 괄호

    문자열을 파싱하는 문제. 식을 해석하는 문제는 나같은 경우는 큐 자료구조를 이용해서 많이 푼다. 문제 접근 방식 우선 어떻게 해야 식의 값이 최소가 되는지를 알아보려고 했다. 식에 더하기와 빼기밖에 없으므로, 어떤 경우로 식을 처리를 해야 최소값이 될 수 있을지 혼자 식을 따로 적어서 생각해 보았다. 일단 식의 계산을 맨 앞에 숫자부터 해야된다고 가정할때, 10+20-10-20+30-20 -> 10+20-10-(20+30)-20 다음 식 같은 경우를 만들어서 살펴보았는데 다음과 같은 두 가지 경우를 고려하게 되었다. +의 경우는 그냥 앞에서 계산한다. -의 경우, 바로 뒤의 식이 +이면 +를 먼저 계산한다 (즉, 괄호를 씌워준다.) / 아니라면 그냥 앞에서 계산한다. 이렇게 고려해줄 경우 식의 값이 최소..

    [C++] 문자열을 공백까지 입력받는 방법 (feat. 그대로 출력하기)

    [C++] 문자열을 공백까지 입력받는 방법 (feat. 그대로 출력하기)

    C++에서 문자열을 입력받을 때 띄어쓰기는 입력이 안되는 문제가 있다. 그냥 문자열을 입력받으면, 띄어쓰기는 입력받지 않으므로 띄어쓰기는 무시된다. 하지만 STL을 include하고 getline 메서드를 사용하면 띄어쓰기, 개행까지 입력받을 수 있다. getline(cin객체, 받을 문자열 변수) 로 사용한다. 띄어쓰기가 입력이 잘 된것을 확인할 수 있다. 개행문자도 입력이 잘 된다. 2021-08-29 수정 만일 개수를 입력받고, 특정 개수만큼 공백포함 문자를 입력받고 싶다면, 위처럼 입력받는 cin과 getline 사이에 getline을 한번 더 해준다. 개행문자가 입력이 되는 문제때문에 발생하는 것 같다. 11718번: 그대로 출력하기 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파..