标签:params mem div scan page for 时间 printf main
给定一个非负整数数组,统计里面每一个数的出现次数。我们只统计到数组里最大的数。
假设 Fmax (Fmax < 10000)是数组里最大的数,那么我们只统计 {0,1,2.....Fmax} 里每个数出现的次数。
5 1 1 2 3 1
0 3 1 1
1 #include<cstdio> 2 #include<algorithm> 3 #include<cmath> 4 #include<cstring> 5 using namespace std; 6 int Max(int[],int); 7 int main() 8 { 9 int n; 10 scanf("%d",&n); 11 int a[n]; 12 for(int i=0;i<n;i++) 13 scanf("%d",&a[i]); 14 int x=Max(a,n); 15 int b[x+1]; 16 memset(b,0,sizeof(b)); 17 for(int i=0;i<n;i++) 18 { 19 if(a[i]<=x)b[a[i]]++; 20 } 21 for(int i=0;i<=x;i++) 22 printf("%d\n",b[i]); 23 return 0; 24 } 25 int Max(int a[],int n) 26 { 27 int s=a[0]; 28 for(int i=0;i<n;i++) 29 if(s<a[i])s=a[i]; 30 return s; 31 }
标签:params mem div scan page for 时间 printf main
原文地址:http://www.cnblogs.com/zby-ccsygz/p/6158870.html