当前位置: 首页 > news >正文

第十五届蓝桥杯大学B组(握手问题、小球反弹、好数)

一、握手问题

思路1:

1)先让所有人相互握手

第一个人49次

第二个人48次

        ·

        ·

        ·

第五十个人0次        共计0+1+2+···+49

2)减去7个没握手的        0+1+···+6

#include<stdio.h>
int main()
{
	int a = 50*49/2 - 7*6/2;
	printf("%d\n",a);
	return 0;
}

运行结果:

思路2:

1)让这7个人和剩下43人都握一次手

7*43

2)43个人相互握手

#include<stdio.h>
int main()
{
	int b = 7*43 + 43*42/2;
	printf("%d\n",b);
	return 0;
}

运行结果:

二、小球反弹

#include<stdio.h>
#include<math.h>
int main()
{
	long long x = 343720;
	long long y = 233333;
	int t = 1;
	while(1)
	{
		if((t*15)%x==0 && (t*17)%y==0)
		{
			break;
		}
		t++;
	}
	printf("%d\n",t);
	double s ;
	s = 2 * ((15*15*t*t)+(17*17*t*t));
	printf("%.2lf\n",2 * sqrt((15.0*15*t*t)+(17.0*17*t*t)));
	return 0;
}

三、好数

本题亮点:

用log10(n)算出当前数是几位数

#include <stdio.h>
#include<math.h>
int good_num(int n,int len)
{
    int i;
    int k = 0;
    for(i = 1;i <= len;++i)
    {
        k = n % 10;//取个位数 
        if((i % 2 == 1 && k % 2 == 0)||(i % 2 == 0 && k % 2 == 1))
        {
            return -1;
        }
        n /= 10;
    }
    return 1;
}
int main(int argc, char *argv[])
{
  int N;
  scanf("%d",&N);
  int i;
  int count = 0;
  int len;
  int ret;
  for(i = 1;i <= N;++i)
  {
    len = (int)log10(i)+1;//得到当前数是几位数 
    ret = good_num(i,len);
    if(1 == ret)
    {
        count++;
    }
  }
  printf("%d\n",count);
  return 0;
}

结果:

相关文章:

  • ChatGPT课件分享(37页PPT)
  • 【亲测有效】Mac系统升级或降级Node.js版本,Mac系统调整node.js版本
  • 【3D视觉学习笔记1】针孔相机模型与坐标系变换
  • 【Azure 架构师学习笔记】- Azure Databricks (17) --Delta Live Table和Delta Table
  • 面试之《webpack从输入到输出经历了什么》
  • 基础网络安全-K8S 配置Ingress-controller 通过HTTPS处理服务请求
  • GB8599-2023标准测试包/小规格测试包/标准生物测试包1.5kg/满负载织物7.5kg/不锈钢金属测试包/空腔负载试验的过程挑战装置(PCD)
  • Linux网络编程之——网络初认识
  • 启智畅想的集装箱号码识别技术,效率与技术的完美结合
  • [杂学笔记] TCP和UDP的区别,对http接口解释 , Cookie和Session的区别 ,http和https的区别 , 智能指针 ,断点续传
  • AF3 shaped_categorical函数解读
  • 大数据hadoop课程笔记
  • HTTPS协议原理:在Linux世界里的加密冒险
  • Jupyter Notebook 全平台安装与配置教程(附Python/Anaconda双方案)
  • Spring(3)—— 获取http头部信息
  • 如何创建一个Vue项目
  • 在Visual Studio 2022中实现Qt插件开发
  • 低版本 Linux 系统通过二进制方式升级部署高版本 Docker
  • Win7 火狐浏览器 Mozilla Firefox 115.7.0esr下载地址(及Chrome、Supermium浏览器)
  • Session、Cookie、Token的区别
  • 越秀地产前4个月销售额约411.2亿元,达年度销售目标的34.1%
  • 98岁动物学家、北京大学教授杨安峰逝世
  • 深入贯彻中央八项规定精神学习教育中央第六指导组指导督导中国工商银行见面会召开
  • 李公明︱一周书记:浪漫主义为什么……仍然重要?
  • 印方称若巴方决定升级局势,印方已做好反击准备
  • 专访|李沁云:精神分析不会告诉你“应该怎么做”,但是……