백준2 백준 1259번 팰린드롬수 C++ 문제풀이 1~99999 사이의 숫자가 주어지고, 앞뒤가 똑같은 번호라면 팰린드롬수라 하고 입력받을 시 yes, 이외에는 no를 출력하는 코드를 짜면 된다. 나는 간편하게 바로 string 형으로 받고 맨 앞과 맨 뒤부터 시작해 한 칸씩 좁혀가며 문자가 일치하는지 검수해줬다. 물론 앞의 절반과 뒤의 절반을 짝지어서 자릿수/2 번으로 검수 횟수를 줄일 수 있겠지만, 사소하게 조정하기 귀찮아서 모든 자리에 대해 2번씩 검수되고 있다. 그러나 이정도 규모의 문제라면 유의미한 차이가 없어보여서 그냥 했다. 주의해야 할 점은 string형 변수 string str = 12345 이라고 한다면 맨 앞 문자는 1이지만, string 의 특성상 맨 뒷 문자는 \0 인 것을 생각해서 맨 앞과 맨 뒤 숫자는 str[0] 과 str[.. 2024. 1. 28. 백준 1181번 단어 정렬 C++ 문제 풀이 알파벳 소문자로 단어들이 주어지고, 1. 길이가 짧은 순, 2. 길이가 같다면 사전 순으로 정렬하는 문제입니다. 하지만 이어서 단, 중복된 단어는 하나만 남기고 제거해야 한다 라고 별로 안중요한 사소한 조건인것 처럼 세번째 조건을 달아둔게 열받네요. 처음 읽어보고는 파이썬 친화적인 문제라고 느껴졌고, C나 C++로 풀면 어렵지 않으려나 싶었습니다. 그래서 더욱 C++로 풀어봤습니다. 링크드리스트나 벡터 등등 고급스러운 자료구조들을 다룰 줄 알면 더욱 쉽게 풀 수 있을 것 같습니다. 다만 아직 잘 다루지 못해서 그냥 배열로 구현했습니다. 제가 접근한 방식은, 주어진 단어들을 알파벳 갯수별로 묶어서 짱박아두고, 전부 입력받으면 나중에 사전 순 정렬해서 출력하기로 했습니다. 입력받을 단어들이 들어갈 arr[5.. 2024. 1. 20. 이전 1 다음