#include <string>
#include <vector>
using namespace std;

string solution(string number, int k) {
    string answer = "";
    int leng = number.length() - k;
    string ans, change;
    int ran_s = 0;
        int max = 0;
    int tmp =0;
    int j =0;
    for(int i =k; i <number.length(); i++){
        max = 0;
        for(j=ran_s; j <=i; j++){
          
            if(number[j] > max ){
                max = number[j];
                tmp = j;
            }
         }
        ran_s = tmp;
        number[tmp] = '0';
        answer+=max; 
    }
    return answer;
}

'자윤이와고리즘 > Code' 카테고리의 다른 글

[프로그래머스] 카펫  (0) 2019.07.22
[프로그래머스] 전화번호 목록  (0) 2019.07.22
[프로그래머스] 쇠막대기  (0) 2019.07.22
[프로그래머스] 기능개발  (0) 2019.07.22
[프로그래머스] 스킬트리  (0) 2019.07.22
#include <string>
#include <vector>
#include <stack>
#include <iostream>
using namespace std;

int solution(string arrangement) {
    int answer = 0;
    string before;
    string now;
    stack<char>left;
    left.push(arrangement[0]);
    for(int i= 1 ; i < arrangement.length(); i++){
        before = arrangement[i-1];
        now = arrangement[i];
        if(before == ")" && now ==")"){
            left.pop();
            answer+=1;
            continue;
        }
        if(arrangement[i] == '(')
            left.push(arrangement[i]);
        else{
            cout << left.top();
            left.pop();
            answer+=left.size();
        }
        
    }
    return answer;
}

'자윤이와고리즘 > Code' 카테고리의 다른 글

[프로그래머스] 전화번호 목록  (0) 2019.07.22
[프로그래머스] 큰 수 만들기  (0) 2019.07.22
[프로그래머스] 기능개발  (0) 2019.07.22
[프로그래머스] 스킬트리  (0) 2019.07.22
[프로그래머스] 탑  (0) 2019.07.22
#include <string>
#include <vector>
#include <queue>

using namespace std;

vector<int> solution(vector<int> progresses, vector<int> speeds) {
    vector<int> answer;
    queue <int> left_day;
    int day = 0;
    for(int i =0; i < progresses.size(); i++){
        int cal = (100-progresses[i]) % speeds[i];
        int cal2 = (100-progresses[i]) / speeds[i];
        if(cal != 0){
            left_day.push(cal2+1);
        }
        else 
            left_day.push(cal2);
    }
    while(!left_day.empty()){
        day = 0;
        int now_n = left_day.front();
        left_day.pop();
        day+=1;
        while(!left_day.empty()){
            int next_n = left_day.front();
            if(now_n >= next_n){
                left_day.pop();
                day+=1;
            }
            else
                break;
        }
        answer.push_back(day);
    }
    return answer;
}

'자윤이와고리즘 > Code' 카테고리의 다른 글

[프로그래머스] 큰 수 만들기  (0) 2019.07.22
[프로그래머스] 쇠막대기  (0) 2019.07.22
[프로그래머스] 스킬트리  (0) 2019.07.22
[프로그래머스] 탑  (0) 2019.07.22
[프로그래머스] 주식가격  (0) 2019.07.22
#include <string>
#include <vector>
using namespace std;

int solution(string skill, vector<string> skill_trees) {
    int answer = 0;
    string newline = "";
    string tt = "";
    int check = 0;
    for(int i=0; i< skill_trees.size(); i++){
        tt = skill_trees[i];
        newline ="";
        check = 0;
        for(int j =0; j < tt.length(); j++){
            for(int l =0; l < skill.length(); l++){
                if(skill[l]==tt[j])   
                  newline+=tt[j];
            }
            
        }
        for(int k =0 ;k < newline.length(); k++){
            cout << newline[k];
            if(newline[k] !=  skill[k]){
                check = -1;
                break;
            }
        }
        if(check!=-1)
            answer+=1;
    }
    return answer;
}

'자윤이와고리즘 > Code' 카테고리의 다른 글

[프로그래머스] 쇠막대기  (0) 2019.07.22
[프로그래머스] 기능개발  (0) 2019.07.22
[프로그래머스] 탑  (0) 2019.07.22
[프로그래머스] 주식가격  (0) 2019.07.22
[백준] 10819 | 차이를 최대로  (0) 2019.05.14

+ Recent posts