UVa 1225 - Digit Counting【打表】

来源:互联网 发布:得无异乎的互 编辑:程序博客网 时间:2024/06/02 03:10

原题地址:

https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3666



刚见到的时候感觉没有好的方法处理,然后突然发现,可以打表啊......

然后想到二维数组打表,但是数组来回赋值比较麻烦........就采用结构体打表了...........

采用的统计方法也很好......数组下标...


#include<stdio.h>#include<string.h>struct digit{int num[10];}x[10005];void db(){int cnt=0;for(int i=1;i<10005;++i){int tp=i;x[i]=x[i-1];//这样赋值方便while(tp)//统计{++x[i].num[tp%10];tp/=10;}}}int main(){int t;db();scanf("%d",&t);while(t--){int n;scanf("%d",&n);for(int i=0;i<9;++i){printf("%d ",x[n].num[i]);}printf("%d\n",x[n].num[9]);}return 0;}


0 0
原创粉丝点击