天天看點

藍橋杯 算法提高 遞歸輸出 ADV-308

藍橋杯 算法提高 遞歸輸出 ADV-308

資源限制

時間限制:1.0s 記憶體限制:512.0MB

問題描述

編寫遞歸函數,将組成整數的所有數字逐個輸出,每個數字後面加上一個減号“-”,例如對于整數123,該函數将輸出1-2-3- 。編寫主函數測試該遞歸函數。

輸入格式

輸入一個整數n

輸出格式

如題目要求,把n的每個數字後面加一個減号”-“輸出

樣例輸入

一個滿足題目要求的輸入範例。

例:

123

樣例輸出

資料規模和約定

#include <iostream>
#include <string>
#include <cstring>
#include <cmath>
using namespace std;
int recursion(string n){
    if(n.length() > 0){
        cout<<n[0]<<"-";
        n = n.substr(1,n.length()-1);
        return recursion(n);
    }
}

int main(){
    int n;
    cin>>n;
    char ch[100];
    sprintf(ch,"%d",n);
    string temp(ch,strlen(ch));
    recursion(temp);
    return 0;
}