北大元培计算机,北大元培计算机模拟

《北大元培计算机模拟》由会员分享,可在线阅读,更多相关《北大元培计算机模拟(17页珍藏版)》请在人人文库网上搜索。

1、1题目 - 满足条件的数累加 来源 元培-From Whf 描述 将正整数 m 和 n 之间(包括 m 和 n)能被 17 整除的数累加。其中,m int main()int m,n,i,s=0;scanf(%d%d,&m,&n);for(i=m;iint main()char a5000=0,b20020=0;int i,j,n,p,q,max,min,c200=0,k;gets(a);for(k=0,i=0,j=0;ak!=0;k+)if(ak=,|ak= )ci+=j;j=0;else bij+=ak;ci=j;n=i;p=q=0;max=min=c0;for(i=1;imax)max=。

2、ci;p=i;else if(ci0)min=ci;q=i;puts(bp);puts(bq);3题目 - n-gram串频统计 来源 元培-From Whf 描述 在文本分析中常用到n-gram串频统计方法,即,统计相邻的n 个单元(如单词、汉字、或者字符)在整个文本中出现的频率。假设有一个字符串,请以字符为单位按n-gram 统计长度为 n 的子串出现的频度,并输出最高频度以及频度最高的子串。设定所给的字符串不多于500个字符,且 1 #includeint main()char a510=0,b5006=0;int l,i,j,n,m=0,c500=0,s;scanf(%dn,&n);g。

3、ets(a);l=strlen(a);for(i=0;im)m=ci;if(m=1)printf(NO);else printf(%dn,m);for(i=0;i#includeint main()char a350=0;int i=-1,j,t=-1,n,b350=0,k,s,u;gets(a);for(k=0;ak!=0;k+)if(ak47&ak0;i-)for(j=0;jbj+1)s=bj;bj=bj+1;bj+1=s;u=n;for(i=0;i=0)printf(,);5题目 - 降序生成进制数 来源 元培-From Whf 描述 按从大到小顺序依次输出 m( 0 ) 个 n 位( 。

4、0 ) 的 k (1 int main()int a35=0;int s=1,m,n,k,i,t=0;scanf(%d%d%d,&m,&n,&k);for(i=0;i0)an-1-=1;else an-1+=k-1;an-2-=1;for(i=n-2;i0;i-)if(ai#includeint main()int a101101,i,j,k,l,m,n,u,v=0,p,q,t;scanf(%d%d,&m,&n);for(i=0;iv)v=u;printf(%d,v); 1题目 - 中间值判断 来源 元培-From Whf 描述 任意给定n个整数(n不大于100),这 n 个整数中的最小值mi。

5、n和最大值max确定了整数序列的左右边界。在这 n 个整数中,是否存在以最小值min和最大值max为左右边界的中间值。如果存在,则输出YES, 否则,输出NO。 例如: 三个数 1,3,5,则左边界是1,右边界是5,中间位置的值= (1 + 5 ) / 2 = 3,出现在序列中。 同样,如果是三个数 1,3,6,中间值是 3 或者 4,此时的3已出现,也成立。 但是,如果是三个数1,2,6,则没有出现中间值。关于输入 第一行:整数个数 n; 第二行:n个整数,其间以空格间隔; 如: 6 1 -2 2 5 -6 9 左右边界点分别是 -6, 9 中间点为 1 和 2,均出现。 关于输出 如果出现。

6、,则输出YES 否则,输出NO例子输入 61 -2 2 5 -6 9例子输出 YES#include#includeint main()int a101=0,i,t,n,min,max,s=0;scanf(%d,&n);scanf(%d,&a0);min=max=a0;for(i=1;imax)max=ai;else if(ai#includeint main()char c,d;int s=0,t=0;while(c=getchar()!=n)if(c47&c#includeint main()int k,m=0,n=0,i,s,t,w=0;scanf(%d,%d,%d,&k,&m,&n);。

7、for(i=m;i0;)t=s%10;if(t=k)v=1;break;u+=t;s=s/10;if(v=0)if(u%k=0)v=1;if(v)if(w=1)printf(;);printf(%d,i);w=1;if(w=0)printf(NULL);4题目 - 最简真分数序列 来源 元培-From Whf 描述 所谓最简真分数是指分子小于分母,且不能约分的分数。给定 n(1 #includeint f(int i,int j)if(i%j=0)return(j);else return(f(j,i-i/j*j);int main()int a201=0,b201=0,i,j,n,p,t=0。

8、,s=0;scanf(%d,&n);for(i=0;i=0;i-)for(j=0;jaj+1)p=aj;aj=aj+1;aj+1=p;if(a00)bt+=a0;for(i=1;i#includevoid run(int d,int p,int q)int i;for(i=0;i0;)char c200=0;int a200=0,b200=0,d200=0,p,q,i,j,s,l;scanf(%d,%s,&p,c);l=strlen(c)-1;q=cl-48;if(cl-1!=,)q+=(cl-1-48)*10;cl-2=0;l=l-3;else cl-1=0;l=l-2;if(p=q)pri。

9、ntf(%sn,c);elsefor(i=0;i 6,因此,结果应该选 7,15,23关于输入 2行: 第1行,n,表示整数个数; 第2行,n 个正整数,空格间隔; 关于输出 按增序输出最长等差数列子集,逗号间隔。例子输入 1020 14 6 15 22 7 23 8 18 25例子输出 7,15,23#include#includeint f(int a,int n,int i,int j)int k,s=0;for(k=j+1;kaj*2)break;else if(ak+ai=aj*2)s=1;break;if(s)return(f(a,n,j,k)+1);else return(2);。

10、int main()int a5001=0,d,l=0,b,i,j,t,s=0,n,p,m=0;scanf(%d,&n);for(i=0;i=0;i-)for(j=0;jaj+1)p=aj;aj=aj+1;aj+1=p;for(i=0;in+1-l)break;if(ai+(l-1)*(aj-ai)an-1)continue;t=f(a,n,i,j);if(tl)l=t;d=aj-ai;b=ai;else if(t=l&aj-aid)d=aj-ai;b=ai;else if(t=l&aj-ai=d&aib)b=ai;if(l2)for(i=0;il;i+)if(s)printf(,);printf(%d,b);b+=d;s=1;else printf(NO。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值