UVA340 ​​​​​​​Master-Mind Hints【数组】

Master-Mind Hints

 UVA - 340 

题目传送门

题目大意:先输入一个整数n,表示有n个数字,下面第一行代表正确答案,其下每一行代表用户猜的答案,需统计其有多少数字位置正确(A),有多少数字在两个字符串中都出现过但位置不正确(B),输入一全为0结束。

AC代码:

#include <cstdio>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <cstring>
#include <map>
#include <stack>
#include <queue>
#include <vector>
#include <bitset>
#include <set>
#include <utility>
using namespace std;
typedef long long ll;
#define inf 0x3f3f3f3f
#define rep(i,l,r) for(int i=l;i<=r;i++)
#define lep(i,l,r) for(int i=l;i>=r;i--)
#define ms(arr) memset(arr,0,sizeof(arr))
//priority_queue<int,vector<int> ,greater<int> >q;
const int maxn = (int)1e5 + 5;
const ll mod = 1e9+7;
int arr[maxn];
int num[15];
int num1[15];
int arr1[maxn];
int main() 
{freopen("in.txt", "r", stdin);freopen("out.txt", "w", stdout);int n;int cnt=0;while(scanf("%d",&n)!=EOF&&n){cnt++;ms(arr);ms(vis);ms(num);printf("Game %d:\n",cnt);rep(i,1,n) {scanf("%d",&arr[i]);num[arr[i]]++;    //记录每个数字出现了多少次}while(1){memcpy(num1,num,sizeof(num));     //将其复制到num1中以便使用int A=0,B=0;int sum=0;rep(i,1,n) {scanf("%d",&arr1[i]);sum+=arr1[i];     //判断全为0时结束if(arr1[i]==arr[i]){A++;      //位置正确则A++num1[arr1[i]]--;   //有一个位置正确就证明不正确的少了一个}}rep(i,1,n) {if(arr1[i]!=arr[i]&&num1[arr1[i]]>0)    //位置不正确且又在原数组中出现过{B++;num1[arr1[i]]--;}}if(sum==0)break;printf("    (%d,%d)\n",A,B);}}return 0;
}

 

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

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

相关文章

教你如何把自己从好友的QQ中删除

在QQ中&#xff0c;有些人看了不太顺眼&#xff0c;真不知当初为何让他加自己为好友的&#xff01; 那有什么办法&#xff0c;可以把自己从对方的QQ中删除呢&#xff1f; 其实&#xff0c;用QQ就可以轻松搞定&#xff01; 让我来为你支一招吧&#xff01; 打开QQ&#xff0…

UVA1583 Digit Generator

Digit Generator UVA - 1583 题目传送门 题目大意&#xff1a;若x的各位数之和加上x本身等于y&#xff0c;则证明x是y的生成元&#xff0c;求输入数字n的最小生成元。 AC代码&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> …

C++内存详解

伟大的Bill Gates 曾经失言&#xff1a; 640K ought to be enough for everybody — Bill Gates 1981 程序员们经常编写内存管理程序&#xff0c;往往提心吊胆。如果不想触雷&#xff0c;唯一的解决办法就是发现所有潜伏的地雷并且排除它们&#xff0c;躲是躲不了的。本文的内…

UVA1584 ​​​​​​​Circular Sequence【字符串】

Circular Sequence UVA - 1584 题目传送门 题目大意&#xff1a;输入一个环形字符串&#xff0c;需输出其最小字典序的形式的字符串。 AC代码&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #includ…

UVA1585 Score

Score UVA - 1585 题目传送门 题目大意&#xff1a;输入一个字符串&#xff0c;O的分数为1&#xff0c;若出现连续的O&#xff0c;如OOOO...&#xff0c;分数为1,2,3,4...&#xff0c;X为0分&#xff0c;求最终的分数 AC代码&#xff1a; #include <cstdio> #includ…

operater int()

class Number { int number; public: explicit Number(int n){number n;} operator int() //注意一定不能声明返回值 { return number; } }; int main () { Number n1 Number(100); int n2 n1; cout << n2 << endl; re…

UVA1586 ​​​​​​​ Molar mass

Molar mass UVA - 1586 题目传送门 题目大意&#xff1a;给你一个只包含C,H,O,N分子式&#xff0c;其中C,H,O,N的原子量分别为&#xff1a;12.01,1.008,16.00,14.01&#xff0c;求其分子量 AC代码&#xff1a; #include <cstdio> #include <iostream> #includ…

SharePoint v3:忘掉模拟用户Impersonate,SPSecurity.RunWithElevatedPrivileges来了

回顾&#xff1a; 在SharePoint V2 大家应该都用过模拟用户Impersonate这个功能&#xff0c; 这个功能用来暂时提升某个用户的权限&#xff0c;比如某个普通用户的本来不能修改某个列表的值&#xff0c;但是我们功能需要在修改。 缺点&#xff1a; 我们使用这个模拟用户功能…

UVA1225 ​​​​​​​Digit Counting

Digit Counting UVA - 1225 题目传送门 题目大意&#xff1a;输入一个数字T&#xff0c;代表有T组测试数据&#xff0c;下面每行有一个整数n&#xff0c;求将1到n的数字连成一串后每个数字出现的个数。 AC代码&#xff1a; #include <cstdio> #include <iostream&…

Chess Queen【数学】

Chess Queen UVA - 11538 题目传送门 题目大意&#xff1a;输入两个整数n,m&#xff0c;在n行m列的棋盘中放入白黑两个棋子&#xff0c;棋子在同一行、同一列或同一对角线上能相互进攻&#xff0c;问有多少种摆放方案。 AC代码&#xff1a; #include <cstdio> #incl…

Java开发中保证接口的幂等性问题

目录 1、解决方案 2、使用token保证接口幂等性的例子 3、在实际项目中&#xff0c;如何有效地使用token法来保证接口的幂等性&#xff1f; 4、3示例中如何获取请求中的 token 5、如果token验证失败&#xff0c;如何处理 6、在上述示例代码中加上token过期后重置的功能 7…

typedef 的四个用途和两大陷阱

>>>>>用途一&#xff1a;定义一种类型的别名&#xff0c;而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如&#xff1a;char* pa, pb; // 这多数不符合我们的意图&#xff0c;它只声明了一个指向字符变量的指针&#xff0c; // 和一个字符变量&am…

Triangle Counting【数学】

Triangle Counting UVA - 11401 题目传送门 题目大意&#xff1a;输入一个整数n&#xff0c;求在1到n中选取三条边能够组成多少种三角形。 AC代码&#xff1a; #include <cstdio> #include <iostream> #include <algorithm> #include <cmath> #in…

Cheerleaders【容斥】

Cheerleaders UVA - 11806 题目传送门 题目大意&#xff1a;给你三个整数n,m,k&#xff0c;代表有一个n行m列的场地&#xff0c;共有k个人&#xff0c;需保证在最外围的一圈的每行每列都必须要有一个人&#xff0c;若这个人在对角上&#xff0c;则可以当做他所在的行列都已经…

Exploring Pyramids【动态规划——区间DP】

Exploring Pyramids UVALive - 3516 题目传送门 题目大意&#xff1a;给你一个字符串&#xff0c;其代表的是机器人来回走过的路径&#xff0c;机器人总是先走左边再走右边&#xff0c;问有多少种情况。 解决方法&#xff1a;设输入序列为S&#xff0c;d(i,j)为子序列Si,Si…

Investigating Div-Sum Property【数位DP】

Investigating Div-Sum Property UVA - 11361 题目传送门 题目大意&#xff1a;输入三个数a,b,k&#xff0c;问从a到b中有多少个数满足数字能够整除k&#xff0c;并且其数位和也能整除k。 解决方法&#xff1a;数位DP的模板题&#xff0c;Dp[x]表示在不超过x的数中满足条件…

UVA - 455 Periodic Strings【字符串】

Periodic Strings UVA - 455 题目传送门 题目大意&#xff1a;先输入一个数字n&#xff0c;在输入n行字符串&#xff0c;对每一个字符串输出其最小的周期长度&#xff0c;每两个输出间有一空行。 AC代码&#xff1a; #include <cstdio> #include <iostream> #…

螺旋方阵问题【数组】

输入n&#xff0c;输出n阶螺旋方阵&#xff0c;下面为5阶螺旋方阵&#xff1a;1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 下面为我的代码&#xff1a; #include <cstdio> #include <iostream> #include &…

马鞍点问题【数组】

如果在一矩阵中元素A[i][j]满足A[i][j]为第i行的最小值&#xff0c;第j行的最大值&#xff0c;则称这个元素为这个矩阵的马鞍点&#xff0c;求m*n矩阵所有的马鞍点。若需求一个矩阵的所有马鞍点&#xff0c;其实只需将矩阵的每行的最小值与每列的最大值分别求出存在相应的数组中…

Ping pong【树状数组】

Ping pong UVALive - 4329 题目传送门 题目大意&#xff1a;一条大街上住着n个乒乓球爱好者&#xff0c;经常组织比赛切磋技术。每个人都有一个不同的技能值ai。每场比赛需要三个人&#xff1a;两名选手&#xff0c;一名裁判。他们有一个奇怪的规定&#xff0c;即裁判必须住…