蓝桥杯练习第一天--求和、灭鼠先锋

这篇具有很好参考价值的文章主要介绍了蓝桥杯练习第一天--求和、灭鼠先锋。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、求和

问题描述

给定 nn 个整数 a_1, a_2, · · · , a_na1​,a2​,⋅⋅⋅,an​ ,求它们两两相乘再相加的和,即:

S=a_{1} \cdot a_{2}+a_{1} \cdot a_{3}+\cdots+a_{1} \cdot a_{n}+a_{2} \cdot a_{3}+\cdots+a_{n-2} \cdot a_{n-1}+a_{n-2} \cdot a_{n}+a_{n-1} \cdot a_{n}S=a1​⋅a2​+a1​⋅a3​+⋯+a1​⋅an​+a2​⋅a3​+⋯+an−2​⋅an−1​+an−2​⋅an​+an−1​⋅an​

输入格式

输入的第一行包含一个整数 nn。

第二行包含 nn 个整数 a_1,a_2,\cdots, a_na1​,a2​,⋯,an​。

输出格式

输出一个整数 SS,表示所求的和。请使用合适的数据类型进行运算。

样例输入

4
1 3 6 9

样例输出

117

评测用例规模与约定

对于 30 \%30% 的数据,1 \leq n \leq 1000,1 \leq a_{i} \leq 1001≤n≤1000,1≤ai​≤100 。

对于所有评测用例, 1 \leq n \leq 200000,1 \leq a_{i} \leq 10001≤n≤200000,1≤ai​≤1000 。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 512M

解法:暴力法 但是通过率只有60%

        通过两个for循环 遍历输入的值并 两两相乘后 相加

#include <stdio.h>
#include <stdlib.h>

int fun(int a1,int a2){
  return a1*a2;
}

int main()
{
  int n,a[200000]={0};
  long num=0;
  scanf("%d",&n);
  for(int i=0;i<n;i++){
    scanf("%d",&a[i]);
  }
  for(int i=0;i<n;i++)
    for(int j=i+1;j<n;j++){
        num+=fun(a[i],a[j]);
    }
	printf("%ld",num); 
  return 0;
}

解法2:

思路:利用 a1*a2+a1*a2+...+a1*an  合并同类项   减少大量的计算  达成100%通过

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  long int n,a[200000],i,j,sum=0,tmp=0;
  scanf("%ld",&n);
  for(i=0;i<n;i++)
  {
    scanf("%ld",&a[i]);
    tmp=tmp+a[i];
  }
  for(i=0;i<n;i++)
  {
    tmp=tmp-a[i];
    sum=sum+a[i]*tmp;
  }
  printf("%ld",sum);
  return 0;
}

2、灭鼠先锋

        

蓝桥杯练习第一天--求和、灭鼠先锋

 文章来源地址https://www.toymoban.com/news/detail-408754.html

 

到了这里,关于蓝桥杯练习第一天--求和、灭鼠先锋的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 第一天 关于项目遇到的问题和缺少的知识点

    配置文件使用的都是配置类方式 创建配置类WebMvcConfig,设置静态资源映射 用于在Springboot项目中, 默认静态资源的存放目录为 : \\\"classpath:/resources/\\\", \\\"classpath:/static/\\\", \\\"classpath:/public/\\\" ; 而在我们的项目中静态资源存放在 backend, front 目录中, 那么这个时候要想访问到静态资源, 就需要

    2024年02月09日
    浏览(35)
  • 蓝桥杯官网练习题(正则问题)

    题目描述 考虑一种简单的正则表达式: 只由 x ( ) | 组成的正则表达式。 小明想求出这个正则表达式能接受的最长字符串的长度。 例如 ((xx|xxx)x|(x|xx))xx 能接受的最长字符串是: xxxxxx,长度是 6。 输入描述 一个由 x()| 组成的正则表达式。输入长度不超过 100,保证合法。 输出

    2024年02月05日
    浏览(40)
  • MSP430f5529初学第一天 关于ccs环境的搭建解决driverlib.h库找不到问题

    在学我这个的文章的前提是软件已经安装好了,本来我想的使用keil开发msp430的 但是我发现官网的sdk没有keil的版本的 所以就直接放弃了,改为官方的ccs开发。 其实ccs跟keil差不多都是写库然后导入到自己的工程里来,下面我们要想实现板子的点灯就得先搭建一下ccs的环境 不然

    2024年02月12日
    浏览(59)
  • [蓝桥杯 2018 国 B] 矩阵求和

    经过重重笔试面试的考验,小明成功进入 Macrohard 公司工作。 今天小明的任务是填满这么一张表: 表有 n 行 n 列,行和列的编号都从 1 算起。 其中第 ii 行第 jj 个元素的值是 gcd(i,j) 的平方,gcd 表示最大公约数,以下是这个表的前四行的前四列: 小明突然冒出一个

    2024年02月08日
    浏览(26)
  • 冲刺十五届蓝桥杯P0001阶乘求和

    阶乘是蓝桥杯中常考的知识。 首先我们需要知道 int 和long的最大值是多少。 我们可以知道19的阶乘就已经超过了long的最大值,所以让我们直接计算202320232023!的阶乘是不现实的。 所以我们需要突破题目的限制,看透问题。 首先需要知道的一点,n!的末尾想要有0,中间一定

    2024年02月07日
    浏览(27)
  • 蓝桥杯专题-试题版-【完美的代价】【芯片测试】【序列求和】【杨辉三角形】

    点击跳转专栏=Unity3D特效百例 点击跳转专栏=案例项目实战源码 点击跳转专栏=游戏脚本-辅助自动化 点击跳转专栏=Android控件全解手册 点击跳转专栏=Scratch编程案例 点击跳转=软考全系列 点击跳转=蓝桥系列 专注于 Android/Unity 和各种游戏开发技巧,以及 各种资源分享 (网站、

    2024年02月11日
    浏览(26)
  • 洛谷P8772 [蓝桥杯 2022 省 A] 求和 C语言/C++

    给定 n n n 个整数 a 1 , a 2 , ⋯   , a n a_{1}, a_{2}, cdots, a_{n} a 1 ​ , a 2 ​ , ⋯ , a n ​ , 求它们两两相乘再相加的和,即 S = a 1 ⋅ a 2 + a 1 ⋅ a 3 + ⋯ + a 1 ⋅ a n + a 2 ⋅ a 3 + ⋯ + a n − 2 ⋅ a n − 1 + a n − 2 ⋅ a n + a n − 1 ⋅ a n S=a_{1} cdot a_{2}+a_{1} cdot a_{3}+cdots+a_{1} cdot a_{n}+a_{2}

    2023年04月14日
    浏览(28)
  • 嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM平台编程第一天-ARM常见问题1-100问(物联技术666)

    链接:https://pan.baidu.com/s/1-u7GvgM0TLuiy9z7LYQ80Q?pwd=1688 提取码:1688 第1问:                         Q:请问在初始化CPU堆栈的时候一开始在执行mov r0, LR这句指令时处理器是什么模式                         A:复位后的模式,即管理模式.                   

    2024年01月24日
    浏览(41)
  • python-10.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二早上将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃前一天剩下的一半再加一个。

    第10天还没吃,就剩1个,说明第9天吃完一半再吃1个还剩1个,假设第9天还没吃之前有桃子x个,可得:x* 1/2 - 1 = 1,可得 x= 4。以此类推,即可手算出。 代码思路为: 第10天还没吃之前的桃子数量初始化 x= 1,之后9至1循环9次,根据上述内容 反推为 x= (x+1) * 2 可得第1天还没吃之

    2024年02月06日
    浏览(38)
  • python获取一个月的第一天/最后一天

    输出将类似于以下内容: 请注意,上述代码将使用当前的系统日期和时间来获取当前月份的第一天。你也可以手动指定日期和时间来获取特定月份的第一天,如下所示: 输出将类似于以下内容: 输出将类似于以下内容: 请注意,上述代码将使用当前的系统日期和时间来获取

    2024年02月17日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包