본문 바로가기
알고리즘/소스코드

PROGRAMMERS 42883: 큰 수 만들기

by cjw.git 2020. 12. 18.

Link : programmers.co.kr/learn/courses/30/lessons/42883


C++

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <string>
#include <vector>
 
using namespace std;
 
string solution(string number, int k) {
    string answer = "";
    int length = number.length() - k;
    int stack = 0;
    for (int i = stack; i < length; i++) {
        int max = -1, index = -1;
        int find;
        for (find = stack; find < number.length() - length + i + 1; find++) {
            if (max < number[find] - 48) {
                max = number[find] - 48;
                index = find;
            }
 
        }
        stack = index + 1;
        answer = answer + (char)(max + 48);
    }
 
 
    return answer;
}
cs

FeedBack

  1. 본 문제는 testcase가 잘못되어 O(N^2)에도 통과하는 오류가 있음.

 

 

 

cjw.git@gmail.com

댓글