校级选拔赛测试--charles

校级选拔赛测试

1、约数个数

2400000有多少个约数(只计算正约数)。

代码解法:

#include<stdio.h>
 int main() {
	     int n=2400000;
	     int sum = 0;
	     //scanf_s("%d", &n);
	     if (n == 0) return 0;
	     for (int i = 1; i <= n / 2; i++) {
		       if (n % i == 0) {
			           sum++;
			
		}
		
	}
	    printf("%d", sum + 1);//任何数本身为其一个约数 
}

答案:108

2、组合问题

在2020个有区别的球中选3个球放在一个盘子里,请问有多少种选法?

暴力解法:2020x2019x2018=8230170840

3、星系炸弹

在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。每个炸弹都可以设定多少天之后爆炸。比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。

有一个贝塔炸弹,2020年11月27日放置,定时为10000天,请你计算它爆炸的准确日期。

格式要求:yyyy-MM-dd

代码解法:

#include<stdio.h>
int main(void)
{
	int a[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
	int days = 10000;
	int year = 2020, month = 11, day = 27;
	for (int i = 0; i < days; i++)
	{
		day++;
		if (day > a[month - 1])
		{
			month++;
			day = 1;
			if (month > 12)
			{
				year++;
				month = 1;
				if ((year % 400) == 0 || (year % 4 == 0 && year % 100 != 0))
					a[1] = 29;
				else
					a[1] = 28;
			}
		}
	}
	printf("%d-%d-%d", year, month, day);
	return 0;
}

答案: 2048-04-14

4、单位换算

某星球的天文服务器容量换算为地球的标准是9123456783TB,请问该服务器的存储容量是多少字节?

暴力解法:

在这里插入图片描述

代码解法:

package cn.charles.test4;
import java.math.BigInteger;
public class Test4 {
    public static void main(String[] args) {
        BigInteger b=new BigInteger("9123456783");
        BigInteger b1=new BigInteger("1024");

        System.out.println(b.multiply(b1).multiply(b1).multiply(b1).multiply(b1));
    }
}

答案:10031346818420318404608

5、海伦公式

在寸土寸金的年代,房价越来越高,造成高房价的原因有许多,而土地价格高、人力价格高、物价上涨等都是因素之一。但是,土地价格高应该占了主要因素。既然土地价高,土地面积的计算就成为一个很重要的任务。但是,有些地块的形状并不规则,甚至有的地块的形状像图1中所示的五边形那样。

一般需要把它划分为多个三角形来计算。

已知三边求三角形的面积需要用海伦定理,参见图2

imgimg

​ 图1 土地形状 图2 海伦定理

要求:根据这些数据求相应地块的面积。四舍五入到小数后两位。只写结果,不要源代码!

代码解法:

//计算的是一个三角形的面积,最后结果三个三角形面积之和
#include<stdio.h> 
#include<math.h> 
int main() {
	float a, b, c, p, area;
	printf("请输入三角形的三边长\n");
	scanf_s("%f %f %f", &a, &b, &c);
	p = 1.0 / 2 * (a + b + c);
	if (a + b > c && b + c > a && a + c > b) {
		area = sqrt(p * (p - a) * (p - b) * (p - c));
		printf("三角形的面积为:%7.2f\n", area);
	}
	else
		printf("不能构成三角形\n");
	return 0;
}

答案:3952.71

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值