学习总结19

# 奶牛的耳语

## 题目描述

在你的养牛场,所有的奶牛都养在一排呈直线的牛栏中。一共有 n 头奶牛,其中第 i 头牛在直线上所处的位置可以用一个整数坐标 pi(0<= pi <= 10^8) 来表示。在无聊的日子里,奶牛们常常在自己的牛栏里与其它奶牛交流一些八卦新闻。每头奶牛发出的声音响度是一样的,而由于声波的能量衰减,某头奶牛发出的声音只能被与它距离不超过 d(0 <= d <= 10^4) 的奶牛所听到,这样这对奶牛就称为可以相互交流的。现在给出所有奶牛的位置和声音所能传播的最远距离 d ,请你编个程序来计算你的养牛场里究竟有多少对可以相互交流的奶牛。

## 输入格式

第一行包含两个整数 n,d。

第二行包含 n 个整数,每个整数都是一个坐标 pi,描述一头奶牛在直线上的位置。

## 输出格式

一个数,表示养牛场中可以相互交流奶牛的对数。

## 样例 #1

### 样例输入 #1

```
5 10
10 12 16 37 40
```

### 样例输出 #1

```
4
```

## 提示

数据规模

对于 40% 的数据,1 <= n <= 10^3。

对于 100% 的数据,1 <= n <= 10^6。

解题思路

我们只要把奶牛按所在位置进行排序,然后向后一个一个模拟就行了。

代码

#include <bits/stdc++.h>
using namespace std;
int g[1000010];
int main()
{int n,d;int x,y,z,sum=0;scanf("%d%d",&n,&d);for(x=1;x<=n;x++){scanf("%d",&g[x]);}sort(g+1,g+n+1);for(x=1;x<n;x++){for(y=x+1;y<=n;y++){if(g[x]+d>=g[y])sum++;elsebreak;}}printf("%d",sum);return 0;
}

# [NOIP2014 提高组] 生活大爆炸版石头剪刀布

## 题目描述

石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。在《生活大爆炸》第二季第 8 集中出现了一种石头剪刀布的升级版游戏。

升级版游戏在传统的石头剪刀布游戏的基础上,增加了两个新手势:

斯波克:《星际迷航》主角之一。

蜥蜴人:《星际迷航》中的反面角色。

这五种手势的胜负关系如表一所示,表中列出的是甲对乙的游戏结果。

现在,小 A 和小 B 尝试玩这种升级版的猜拳游戏。已知他们的出拳都是有周期性规律的,但周期长度不一定相等。例如:如果小 A 以 `石头-布-石头-剪刀-蜥蜴人-斯波克` 长度为 6 的周期出拳,那么他的出拳序列就是 `石头-布-石头-剪刀-蜥蜴人-斯波克-石头-布-石头-剪刀-蜥蜴人-斯波克-...`,而如果小 B 以 `剪刀-石头-布-斯波克-蜥蜴人` 长度为 5 的周期出拳,那么他出拳的序列就是 `剪刀-石头-布-斯波克-蜥蜴人-剪刀-石头-布-斯波克-蜥蜴人-...`。

已知小 A 和小 B 一共进行 N 次猜拳。每一次赢的人得 1 分,输的得 0 分;平局两人都得 0 分。现请你统计 N 次猜拳结束之后两人的得分。

## 输入格式

第一行包含三个整数:N,NA,NB,分别表示共进行 N 次猜拳、小 A 出拳的周期长度,小 B 出拳的周期长度。数与数之间以一个空格分隔。

第二行包含 NA 个整数,表示小 A 出拳的规律,第三行包含 NB个整数,表示小 B 出拳的规律。其中,0 表示 `剪刀`,1 表示 `石头`,2 表示 `布`,3 表示 `蜥蜴人`,4表示 `斯波克`。数与数之间以一个空格分隔。

## 输出格式

输出一行,包含两个整数,以一个空格分隔,分别表示小 A、小 B 的得分。

## 样例 #1

### 样例输入 #1

```
10 5 6
0 1 2 3 4
0 3 4 2 1 0
```

### 样例输出 #1

```
6 2
```

## 样例 #2

### 样例输入 #2

```
9 5 5
0 1 2 3 4
1 0 3 2 4
```

### 样例输出 #2

```
4 4
```

## 提示

对于 100% 的数据,0 < N <= 200, 0 < NA <= 200, 0 < NB <= 200 。

解题思路

拿一个二维数组把每一种比赛结果都模拟出来,再拿两个数组保存出拳规律,然后进行模拟就行了

代码

#include <bits/stdc++.h>
using namespace std;
int g[5][5]=
{{0,-1,1,1,-1},{1,0,-1,1,-1},{-1,1,0,-1,1},{-1,-1,1,0,1},{1,1,-1,-1,0},
};
int a[210];
int b[210];
int main()
{int n,c,d;int x,y=0,z=0,q=1,e=1;scanf("%d%d%d",&n,&c,&d);for(x=1;x<=c;x++)scanf("%d",&a[x]);for(x=1;x<=d;x++)scanf("%d",&b[x]);for(x=1;x<=n;x++){if(g[a[q]][b[e]]==1){y++;}else if(g[a[q]][b[e]]==-1){z++;}q++;e++;if(q>c)q=1;if(e>d)e=1;}printf("%d %d",y,z);return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/479072.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MyBatis--02-1- MybatisPlus----条件构造器

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言AbstractWrapper 条件构造器官网文档https://baomidou.com/pages/10c804/#abstractwrapper](https://baomidou.com/pages/10c804/#abstractwrapper)![在这里插入…

npm ERR! code CERT_HAS_EXPIRED:解决证书过期问题

转载&#xff1a;npm ERR! code CERT_HAS_EXPIRED&#xff1a;解决证书过期问题_npm err! code cert_has_expired npm err! errno cert-CSDN博客 npm config set registry http://registry.cnpmjs.org npm config set registry http://registry.npm.taobao.org

【Day51】代码随想录之动态规划完全背包_139.单词拆分_背包总结

文章目录 动态规划理论基础动规五部曲&#xff1a;出现结果不正确&#xff1a; 139.单词拆分背包问题0-1背包完全背包 动态规划理论基础 动规五部曲&#xff1a; 确定dp数组 下标及dp[i] 的含义。递推公式&#xff1a;比如斐波那契数列 dp[i] dp[i-1] dp[i-2]。初始化dp数组…

uniapp不同平台获取文件内容以及base64编码特征

前言 文件图片上传&#xff0c;客户端预览是很正常的需求&#xff0c;获取文件的md5特征码也是很正常的&#xff0c;那么&#xff0c;在uniapp中三种环境&#xff0c;h5, 小程序以及 app环境下&#xff0c;如何实现的&#xff1f; 参考&#xff1a; 如何在uniapp中读取文件Arr…

Guitar Pro 8.1 Mac 2024最新下载、安装、激活、换机图文教程

Guitar Pro 8是吉他手的终极工具箱,也是阅读和编辑乐谱的领先软件。26 年来,Guitar Pro 一直在帮助世界各地的音乐家学习弹吉他、创作歌曲以及转录和编辑歌集。 Guitar Pro是一款专业的吉他制谱软件&#xff0c;现在已更新至Guitar Pro8&#xff0c;新增了支持添加音频轨道、支…

C++拷贝构造函数与赋值运算符重载

顾得泉&#xff1a;个人主页 个人专栏&#xff1a;《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂&#xff0c;年薪百万&#xff01; 一、拷贝构造函数 1.概念 在现实生活中&#xff0c;可能存在一个与你一样的自己&#xff0c;我们称其为双胞胎。 那在创…

ClickHouse 基础(一)

官网 ClickHouse release 24.1, 2024-01-30 以毫秒为单位查询数十亿行 ClickHouse是用于实时应用和分析的最快、资源效率最高的开源数据库。 安装ClickHouse 使用ClickHouse&#xff0c;你有三个选择: ClickHouse云:官方ClickHouse作为一项服务&#xff0c;-由ClickHouse的创…

openGauss 5.0.0全密态数据库应用小试

前言 openGauss HCIA教材中&#xff0c;安全是一个重要的章节&#xff0c;在实际项目中&#xff0c;随着网络安全和信息安全形势的变化&#xff0c;企业也越来越重视数据库安全。去年在HALP内部进行openGauss培训时&#xff0c;安全特性就被学员们提出来要重点讲解&#xff0c…

免费改文案的软件有哪些,为大家分享四款!

随着数字化时代的到来&#xff0c;文案写作已经成为许多企业和个人必备的技能。要在众多文案中脱颖而出并不容易。所幸的是&#xff0c;如今有许多免费改文案的软件可以帮助我们快速而高效地完成这项工作。本文将介绍一些常见的免费改文案的软件&#xff0c;帮助大家选择适合自…

【C++】vector模拟实现+迭代器失效

vector模拟实现 成员变量定义默认成员函数构造函数 迭代器范围for、对象类型匹配原则 容量操作sizeemptycapacityreserve成员变量未更新memcpy值拷贝 resize内置类型的构造函数 数据访问frontbackoperator[ ] 数据修改操作push_backpop_backswapclearinsertpos位置未更新无返回…

2、windows环境下vscode开发c/c++环境配置(一)

前言&#xff1a;VSCode是微软出的一款轻量级编辑器&#xff0c;它本身只是一款文本编辑器而已&#xff0c;并不是一个集成开发环境(IDE)&#xff0c;几乎所有功能都是以插件扩展的形式所存在的。因此&#xff0c;我们想用它编程&#xff0c;不只是把vscode下载下来就行&#x…

卡诺模型驱动人工智能革新:重塑未来智能生态!

在数字化浪潮席卷全球的今天&#xff0c;人工智能&#xff08;AI&#xff09;已成为推动社会进步的重要力量。而卡诺模型&#xff0c;作为一种经典的产品设计和优化工具&#xff0c;正以其独特的视角和强大的分析能力&#xff0c;为人工智能领域注入新的活力&#xff0c;赋能AI…