赞
踩
问题:
吴医生是个很迷信的医生,他认为与4相关的数字都会带来厄运,因此他拒绝为所有挂号单序号中有数字4,或序号能被4整除的病人看病。(每张挂号单有一个唯的序号)
小李是一名年轻的护士,虽然对吴医生的怪癖好不能理解,但他是内科最权威的医生, 小李无法阻止他的我行素。为了能让每个病人都顺利的看上病,小李决定只给病人们不含有数字4,并且不被4整除的序号挂单。
今天门诊部刚开门,就来了n位病人都要挂吴医生的专家门诊(n为正整数,且 n < 50),请问小李能开给这n位病人的挂号单的序号总和最小是多少?
代码如下:
#include<stdio.h> int four(int x)//函数判断编号是否与4有关? { if(x % 4 == 0 || x % 10 == 4 || (x / 10) % 10 == 4)//被4整除,个位上有4,其他位有4 return 1; else return 0; } int main () { int k = 1;//初始化编号,从1开始:1、2、3、5、6、7、9... int sum = 0;//计数 :计算编号的总和 int n; //病人人数变量 scanf("%d",&n);//输入人数=n个人 printf("human(number) is :%d\n",n);// while(n > 0) //for( ;n > 0;n--) { if(four(k) == 0) { printf("k(number) is :%d\n",k);// sum = sum + k; k++; n--; } else { k++; } } printf("sum is:%d\n",sum);// return 0; }
参考GitHub:libpku
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。