코딩테스트/LV. 0

LV. 1 :: 문자열 내 마음대로 정렬하기

KUROMI98 2023. 1. 19. 18:53

https://school.programmers.co.kr/learn/courses/30/lessons/12915

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

솔루션

function solution(strings, n) 
{
    for (i=0; i<strings.length; i++){strings[i]=strings[i][n]+strings[i];}
    // n번째 원소를 추출해 단어 맨 앞에 붙인다.

    strings.sort();
    // 맨 앞에 붙여진 글자를 기준으로 strings를 재정렬한다.
    
    for (i=0; i<strings.length; i++){strings[i]= strings[i].slice(1);}
    // 재정렬이 끝나면 앞글자들을 삭제해 준다.
    
    return strings;
}

230509) 

const solution = (strings, n)  => {
    strings = strings.map(x => x[n] + x);
    // n번째 원소를 추출해 단어 맨 앞에 붙인다.

    strings.sort();
    // 맨 앞에 붙여진 글자를 기준으로 strings를 재정렬한다.
 
    strings = strings.map(x => x.slice(1));
    // 재정렬이 끝나면 앞글자들을 삭제해 준다.
    
    return strings;
}

230525 파이썬

def solution(strings, n):
  strings = [x[n] + x for x in strings]
  strings.sort()
  strings = [x[1:] for x in strings]
  return strings

0914 C++

#include <string>
#include <vector>
#include <algorithm> // std::sort 함수를 사용하기 위한 헤더
using namespace std;

vector<string> solution(vector<string> strings, int n) {
 
 for (int i=0; i<strings.size(); i++) {
     strings[i]=strings[i][n]+strings[i];
 } 
    
std::sort(strings.begin(), strings.end());

for (int i=0; i<strings.size(); i++) {
     strings[i] = strings[i].substr(1);
 }
    return strings ;
}