算法入门经典第二版 3-3 Digit Counting

来源:互联网 发布:全职高手烽火知韩txt 编辑:程序博客网 时间:2024/06/05 12:04

如果你使用的 Dev-C++,CodeBlocks等编译器默认不是支持C++11标准的 先更改编译器选项,更改成C++11标准,自行百度。

#include <stdio.h>#include <string>#include <cstring>using namespace std;int main(){    int a[10],T,N;;    string s;    scanf("%d",&T);    while(T--) {            memset(a,0,sizeof(a));          scanf("%d",&N);        s = "";        for(int i = 1; i <= N; i++)  //本题这样做效率不高(在这里直接处理会提高效率)                  s = s + to_string(i);    //但是因为我写过统计数字的代码,所以我就偷了个懒直接构造了一个字符串        for(int i = 0; i < s.size(); i++)              a[s[i]-48]++;        printf("%d",a[0]);        for(int i = 1; i <= 9; i++)            printf(" %d",a[i]);        printf("\n");    }    return 0; }