您的位置:首页 > 编程语言 > C语言/C++

C语言_猜测序列和元的生成

2019-05-27 12:33 101 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/Antonio_Salieri/article/details/90601277

猜测序列
#include <stdio.h>
#define maxn 1010

int main(void)
{
int n, a[maxn], b[maxn];
int kase = 0;
int A = 0, B = 0;
while (scanf("%d", &n) == 1 && n){
printf(“Game %d:\n”, ++kase);
for (int i = 0; i < n; i++)
scanf("%d", &a[i]);
for(; ; ) {
for (int i = 0; i < n; i++){
scanf("%d", &b[i]);
if (a[i] == b[i])
A++;
}
if (b[0] == 0)
break;
for (int d = 1; d <= 9; d++){
int c1 = 0, c2 = 0;
for (int i = 0; i < n; i++){
if (a[i] == d) c1++;
if (b[i] == d) c2++;
}
if (c1 < c2) B += c1;
else B += c2;
}
}
printf(" (%d, %d)\n", A, (B - A));
}
return 0;
}

#include <stdio.h>
#include <string.h>
#define maxn 100005
int ans[maxn];

int main(void)
{
int T, n;
memset (ans, 0, sizeof (ans));
for (int m = 1; m < maxn; m++){
int x = m, y = m;
while (x > 0) {y += x % 10; x /= 10;}//核心语句
if (ans[y] == 0 || m < ans[y]) ans[y] = m;//将得出的元填入此位置
}
//查表
scanf("%d", &T);
while(T–){
scanf("%d", &n);
printf("%d\n", ans
);
}
//查表
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: