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

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

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

2019-11-11 04:35:31
字體:
來源:轉載
供稿:網友

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;}程序截圖:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 邮箱| 三都| 安阳县| 洪雅县| 德令哈市| 庆城县| 邵武市| 清丰县| 伊通| 青神县| 汤阴县| 讷河市| 毕节市| 镇坪县| 华坪县| 沙湾县| 峨山| 化隆| 谢通门县| 广河县| 庆城县| 额尔古纳市| 灵山县| 张家川| 新沂市| 冷水江市| 土默特右旗| 贵阳市| 成安县| 屏南县| 益阳市| 双峰县| 嘉荫县| 涟水县| 客服| 无锡市| 二连浩特市| 馆陶县| 富裕县| 大同县| 漳平市|