三九宝宝网宝宝教育写作范文

pascal统计数字

12月27日 编辑 39baobao.com

[C输入一个字符串统计出某个指定的字符在该字符串中出现的次]#include<iostream> #include<string> using namespace std; void main() { char *p,a[81]; int n,i; cout<&lt;"请输入一个字符串:"<<endl; cin.getline(a,81); char search; c...+阅读

这道题是NOIp 2007的复赛提高组第一题吧? 排序+线性统计的处理即可。

数据规模n在200000因此O(nlogn)排序【即快排或其他高效排序法】可过。数据范围在1,500,000,000

qsort在一定情况下的最差表现为o(n^2)。

参考程序使用了qsort。

这道题目适合用来初学者练习排序。参考程序

program count;

var

a: array[0..200000] of longint;

n, i, tot: longint;procedure qsort(l, r: longint);

var

ii, jj, kk, mid: longint;

begin

ii := l;

jj := r;

mid := a[(ii+jj) shr 1];

repeat

while a[ii] < mid do inc(ii);

while a[jj] > mid do dec(jj);

if ii <= jj then begin

kk := a[ii];

a[ii] := a[jj];

a[jj] := kk;

inc(ii);

dec(jj);

end;

until ii > jj;

if ii < r then qsort(ii, r);

if jj > l then qsort(l, jj);

end;begin

assign(input, 'count.in');

assign(output, 'count.out');

reset(input);

rewrite(output);

readln(n);

for i := 1 to n do read(a[i]);

qsort(1, n);

tot := 1;

write(a[1]);

for i := 2 to n do begin

if a[i] = a[i-1] then begin

inc(tot);

end else begin

writeln(' ', tot);

write(a[i]);

tot := 1;

end;

end;

writeln(' ', tot);

close(input);

close(output);

end.

以下为关联文档:

急需要 2013全国火灾死伤统计数据1、2013年1月1日凌晨,杭州市萧山区瓜沥镇临港工业园 区内的杭州友成机工有限公司发生特大火灾,3名消防官兵在扑救火灾过程中不幸牺牲。 2、2013年1月3日7时30分许,浙江温州龙湾...

下表是某糖厂今年第二季度产量统计图请看图填空 1在横线里填(1)四月份产量是100吨,五月份是150吨,六月份是300吨,填入统计图如下: (2)(100+150+300)÷3 =550÷3, ≈183.3(吨); 答:第二季度平均月产糖约183.3吨. (3)150-100=50(吨),300-150=150(吨...

EXCEL求助利用函数进行统计拜托了Sum与sumif的一般用法 在excel函数中sum是大多数人学公式的第一个。许多人用了几年,对于sum的用法还是在A1+A2的高度。当然,sum与其它函数结合套用时会产生奇妙面强大的功能,而...

excel求助统计请使用数据透视表以代替分类汇总 在数据透视表报表中添加或删除分类汇总 如果在数据透视表报表中创建了两个或更多个行字段或列字段,则 Microsoft Excel 将自动显示外部行和...

Excel求助分年龄段和性别统计公式大概是这个样子: 接下来说一下怎么做: 1、首先,你得有一个信息表,并且注意性别只能录入男和女,年龄这一列不能是文本格式。所有单元格内不能有空格。 2、像我一样在右侧画一个表...

excel统计总人数空白单元格输入 =SUMPRODUCT(LEN(A1:A3)-LEN(SUBSTITUTE(A1:A3,",",""))) 我举例是a1--a3 你自己改成你的数据范围 哦,我是按逗号是中文逗号算的 如果是英文逗号 自己改公式中的...

怎么样用excel统计函数计算人数假设你的数据库已经建立好了. ABC两列为姓名,分数,职业 A1,B1为标题 下面开始为数据. 总共有1000行. 在D1输入"分数"这两个字(要与你数据库标题一样) 在D2输入>=70 在E1输入"职业"...

怎么用excel统计总人数分类汇总只能处理简单的数据。 可以用公式。假如第一行是标题,要统计001先生、女士、未填的人数: =sumproduct((a2:a100="001")*(b2:b100="先生")) =sumproduct((a2:a100="001")*(b2:...

在EXCEL里面怎么统计算出各阶段的人口数1.根据身份证号计算年龄 =IF(A2<>"",DATEDIF(TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00"),TODAY(),"y"),) 注意:A2单元格为身份证号,且为文本格式。 2.根据身份证...

推荐阅读
图文推荐