国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

藍橋杯——2011 吉大計算機研究生機試真題(節選,2017.2.6)

2019-11-11 05:05:37
字體:
來源:轉載
供稿:網友

1. 數字之和

源代碼:

#include <stdio.h>int main(){	int n,pown;	int sum1,sum2;	while(scanf("%d",&n)!=EOF)	{		if(n==0)			break;		pown=n*n;		sum1=0,sum2=0;		while(n)		{			sum1+=n%10;			n/=10;		}		while(pown)		{			sum2+=pown%10;			pown/=10;		}		PRintf("%d %d/n",sum1,sum2);	}	return 0;}程序截圖:

2. 字符串的反碼

源代碼:

#include <stdio.h>#include <string.h>#define maxlen 81int main(){	int i;	char str[maxlen];	while(gets(str)!=NULL)                              //需注意字符串中可能含有空格,不能用scanf("%s",str)!=EOF	{		if(strcmp(str,"!")==0)			break;		for(i=0;i<strlen(str);i++)		{			if(str[i]>='A' && str[i]<='Z')				str[i]=155-str[i];			else if(str[i]>='a' && str[i]<='z')				str[i]=219-str[i];		}		puts(str);	}	return 0;}程序截圖:

3. 搬水果

【分析】貪心算法,每次找出數組里面最小的兩個數組合,用sort排序一次一次求出最小的兩個值一定會超時,所以用特殊的選擇排序,每次都使數組前兩個數最小(只排前兩個),測試數組可能很大,其余后面的沒必要排序,節省時間。        其中要注意的一點,找出數組中最小值時,只需要統計下標,跳出循環后再讓他與首元素進行交換,防止在循環內交換次數過多造成超時!

源代碼:

#include <stdio.h>#define maxn 10010int main(){	int i,j,k,n,a[maxn];	int sum,t,x;    while(scanf("%d",&n)!=EOF)    {    	if(n==0)    		break;		for(i=0;i<n;i++)        	scanf("%d",&a[i]);        x=0,sum=0;        while(x<n-1)        {            for(i=x;i<x+2;i++)            {                k=i;                for(j=i+1;j<n;j++)                {                   if(a[k]>a[j])				   		k=j;                //標記最小值                }               t=a[i];                      //在循環外面交換,不需要每次交換,節省了交換時間                a[i]=a[k];               a[k]=t;                     }           a[x+1]=a[x]+a[x+1];           sum+=a[x+1];                x++;       }       printf("%d/n",sum);    }    return 0;}程序截圖:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安顺市| 那曲县| 平顺县| 长岛县| 会昌县| 新民市| 交城县| 阳新县| 来凤县| 十堰市| 梧州市| 正蓝旗| 临江市| 宕昌县| 桃源县| 宜宾县| 澄江县| 朝阳市| 正定县| 海阳市| 惠水县| 石楼县| 宜州市| 松阳县| 庆元县| 永嘉县| 城步| 公安县| 浦江县| 齐齐哈尔市| 日土县| 开封县| 白水县| 灵台县| 博野县| 临猗县| 建湖县| 肥东县| 黎城县| 昌宁县| 博罗县|