国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}程序截圖:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 林芝县| 磴口县| 康定县| 和田市| 清原| 萨嘎县| 托克托县| 绥江县| 万安县| 东明县| 广水市| 香港 | 天全县| 加查县| 鄂伦春自治旗| 桦甸市| 武宣县| 浑源县| 甘肃省| 桃园县| 台北县| 衡山县| 牡丹江市| 宁海县| 离岛区| 惠安县| 庄浪县| 萨嘎县| 叶城县| 财经| 张家界市| 施秉县| 白河县| 湘西| 宁晋县| 汪清县| 元江| 芦溪县| 建水县| 龙岩市| 竹北市|