USACO 2022 January Contest, Bronze ——Problem 1. Herdle
题目描述
奶牛们发明了一种名为 Herdle 的新型解谜游戏,在牛界引起了轰动。
每天都会有一个新谜题发布供奶牛解决。游戏采用 3x3 方阵的形式表示农场的一块田地,田地的每个方格都由特定品种的奶牛占据。总共只有 26 种可能的品种,每一种由 A 到 Z 中的不同大写字母标识。玩家不会被告知田地中的奶牛品种排列方式——游戏目标是通过一系列猜测确定它们。
每次猜测,奶牛们输入一个 3x3 的大写字母方阵,表示该田地可以用奶牛填充的可能方式。猜测的某些方格可能是正确的。这些方格以绿色高亮显示,让奶牛们知道这些是正确的。猜测的另一些方格可能填入了品种正确但位置错误的奶牛。这些以黄色高亮显示。
黄色高亮显示的方格的数量可以帮助指示某个品种的奶牛数量。 例如,假设猜测方阵包含 4 头品种 A 的奶牛,而答案方阵包含 2 只品种 A 的奶牛,其中没有正确位置上的 A (即,它们都不应该是绿色的)。 在这种情况下,猜测方阵中只有两个 A 应以黄色高亮显示。 更准确地说,如果猜测方阵中有 x 个特定品种的奶牛,并且 答案方阵中有 y<x 头该品种奶牛(不包括位置正确而得到绿色高亮显示的奶牛),那么猜测方阵的 x 头奶牛中只有 y 头奶牛应该以黄色高亮显示。
给定正确答案的方阵和一个表示对该答案的猜测的方阵,请计算绿色和黄色高亮显示的方格的数量。
输入格式(从终端 / 标准输入读入):
输入的前 3 行给定了正确答案的方阵。以下 3 行表示对该答案的猜测。
输出格式(输出至终端 / 标准输出):
输出两行。输出的第一行包含应当以绿色高亮显示的方格的数量。输出的第二行包含应当以黄色高亮显示的方格的数量。
【输入输出样例】
输入样例1:
COW SAY MOO WIN THE IOI
输出样例1:
1 1
在这个例子中,最后一行中间的 O 是正确的,所以这个方格以绿色高亮显示。字母 W 位于错误的位置,所以它以黄色高亮显示。
输入样例2:
AAA BBB CCC AYY AAA ZZZ
输出样例2:
1 2
在这里,其中一个 A 位于正确的位置,所以它以绿色高亮显示。余下的 A 均不在正确位置上,由于答案方阵中有两个 A,所以有两个 A 应当以黄色高亮显示。
供题:Brian Dean,灵感来自应用 "Wordle"
第一版代码(部分数据点正确,有骗分的成分在)
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
using namespace std;
char answer[100][100],check[100][100];int main()
{long long int i,j,k,m,len1,len2,green=0,yellow=0;string n;for(i=0;i<3;++i){cin>>n;len1=n.length();for(j=0;j<len1;++j){answer[i][j]=n[j];}}for(i=0;i<3;++i){cin>>n;len2=n.length();for(j=0;j<len2;++j){check[i][j]=n[j];}}for(i=0;i<3;++i){for(j=0;j<3;++j){if(answer[i][j]==check[i][j]) {green++;}}}for(i=0;i<3;++i){for(j=0;j<3;++j){if(answer[i][j]==check[i][j]) {yellow++;} }} //黄色的高亮部分不知道怎么判断,就直接复制了绿色部分骗了三个数据点cout<<green<<endl;cout<<yellow<<endl;return 0;
}
测试结果:(相比上一次啥也没对,是有一点点进步了的)
已AC代码:
#include <iostream>
#include <cstring>
#include <cstdio>
#include <string>
#include <algorithm>
using namespace std;
char answer[10][10],check[10][10];
int sum1[27],sum2[27];
int main()
{int i,j,green=0,yellow=0;string n;for(int i=0;i<3;++i){for(int j=0;j<3;++j){cin>>answer[i][j];}}for(int i=0;i<3;++i){for(int j=0;j<3;++j){cin>>check[i][j];}}for(i=0;i<3;++i){for(j=0;j<3;++j){if(answer[i][j]==check[i][j]) //统计绿色{green++;}else //统计在方块中存在,但位置不对的情况{sum1[answer[i][j]-'A']++; //统计上部分的方块各个字母的数量sum2[check[i][j]-'A']++; //统计下部分的方块各个字母的数量}}}for(int i=0;i<26;++i){yellow+=min(sum1[i],sum2[i]);//以较小的数量为准,因为多了的字母上/下面不一定有,少了的一定会满足}cout<<green<<endl;cout<<yellow<<endl;return 0;
}
USACO 2022 January Contest, Bronze ——Problem 1. Herdle相关推荐
- USACO 2022 January Contest, Bronze
Problem 1. Herdle 奶牛们发明了一种名为 Herdle 的新型解谜游戏,在牛界引起了轰动. 每天都会有一个新谜题发布供奶牛解决.游戏采用 3x3 方阵的形式表示农场的一块田地,田地的每 ...
- USACO 2021 January Contest, Bronze. Problem 1. Uddered but not Herd
题目描述 一个鲜为人知的事实是,奶牛拥有自己的文字:「牛文」.牛文由 26 个字母 'a' 到 'z' 组成,但是当奶牛说牛文时,可能与我们所熟悉的 'abcdefghijklmnopqrstuvwx ...
- Promotion Counting【USACO 2016 January Contest, Bronze】
今天来分享一下我做过的几道Usaco的比较简单的题,Usaco是美国的一个c++竞赛比赛,但是全球各地的人都可以参加,Usaco没有监考,全凭诚信,但是你拿着这个 作弊 借鉴来的成绩,所有美国的大学都 ...
- USACO 2015 January Contest Bronze——奶牛的旅行路线
文章目录 题目描述 输入格式 输出格式 数据范围 输入样例 输出样例 实现代码--奶牛只想走一条路线的情况下 题目描述 厌倦了农场寒冷的冬季天气,奶牛贝茜计划飞往一个温暖的目的地度假. 不幸的是,她发 ...
- USACO 2018 January Contest
USACO 2018 January Contest 比赛链接 T1 MooTube 题目链接 题目大意:给定一个图,两个点之间的距离是他们路径上边权的最小值.给定一个起点,求距离大于等于K的点有几个 ...
- USACO 1月 2021-2022 January Contest Bronze 题解
目录 你好啊我又又又来了 要准备usaco的铁铁们可以参考这个文章哦!USACO题库 - 比Usaco Training更好用的网站_GeekAlice的博客-CSDN博客https://blog.c ...
- USACO 2022 December Contest, BronzeProblem 1. Cow College 题解
以下是2022年-2023年USACO赛季第一个月的青铜组第一题,可以使用"计数数组+打擂台找最值"的思想,需要考生掌握一点算法才能通关.文章引用了官网题面,提供思考思路和代码,代 ...
- USACO 2021 January Contest, BronzeProblem 3. Just Stalling题解
题目描述 Farmer John 有 N 头奶牛(1≤N≤20),高度为 a1-aN.他的牛栏有 N 个牛棚,高度限制分别为b1-bN(例如,如果 b5=17,那么一头高度不超过 17 的奶牛可以住在 ...
- USACO 2012 January Contest, Silver Division Solution
T1是一道构图然后跑最短路的题. T2是一道裸的dp 然而我看了以后觉得爆搜是一定可以过掉的== 于是我先来一发二进制枚举,然后two points 维护答案.. T3是一道神题 首先要分类讨论,然后 ...
最新文章
- Netty原理五:ChannelFuture、DefaultChannelPromise对象解析
- 表单提交对chrome记住密码的影响
- python降维之时间类型数据的处理_使用Python进行数据降维|线性降维
- 添加编译宏_软件开发——编译链接
- JeecgBoot 2.4 微服务正式版发布,基于SpringBoot的低代码平台
- c语言把字符串写入文件,c语言文件读写 | 按字符,按行,按块
- 域渗透——Local Administrator Password Solution
- 《Face alignment at 3000 FPS via Regressing Local Binary Features》阅读笔记
- Linux下服务器搭建(5)——CentOS下Redis的安装
- React Native组件(四)TextInput组件解析
- Java中字符串的几个实例
- form表单问题记录
- 201632位matlab下载_Matlab 2016a下载
- 微信群二维码有效期如何延长?突破7天有效期的方法!
- web 自动化测试 浏览器及驱动下载地址大全
- sql server操作1:数据库及基本表的建立
- 红米手机html文件,红米手机怎么传文件到电脑
- 产业互联网,一次从需求侧向供给侧的自我嬗变
- 内网安全-域横向CobaltStrikeSPNRDP
- 同步Socket 与 异步 Socket