任务PTICE,COCI 2008/2009, Contest #1 – October 18, 2008。混淆输出并回答出错
阿德里安,布鲁诺和戈兰想加入鸟类爱好者俱乐部。但是,他们并不知道所有申请人都必须通过入学考试。 考试包含
N
问题,每个问题都有三个可能的答案:A
,B
和C
。不幸的是,他们不能告诉一只鲸鱼,所以他们试图猜测正确的答案是 。
这三个男孩有什么设置答案的理论将工作 最佳:
- 阿德里安声称,最好的顺序是:
A, B, C, A, B, C, A, B, C, A, B, C ...
- 布鲁诺相信,这是更好的:
B, A, B, C, B, A, B, C, B, A, B, C ...
- 戈兰嘲笑他们,并会使用此顺序:
C, C, A, A, B, B, C, C, A, A, B, B ...
写一个程序,GIV对考试的正确答案, 确定三个中的哪一个是正确的 - 其序列包含最正确的答案 。
INPUT
第一行包含一个整数
N
(1 ≤ N ≤ 100
),对考试 问题的数目。第二行包含字符串N
字母'A'
,'B'
和'C'
。这些依次是对考试中问题的正确答案。输出
在第一线,输出
M
,答对了三个男孩的 一个得到的数量最多。之后,输出男孩的姓名 (按字母顺序排列),其序列导致M
正确 答案。实施例
输入
5 BAACC
输出
3 Bruno
输入
9 AAAABBBBB
输出
4 Adrian Bruno Goran
我的代码:
my_i = input()
my_inp = raw_input()
my_dict = {
'Adrian' : ('A','B','C')*my_i,
'Bruno' : ('B','A','B','C')*my_i,
'Goran' : ('C','C','A','A','B','B')*my_i
}
my_list = []
for i in my_inp:
i = str(i)
my_list.append(i)
A = 0
B = 0
C = 0
for i in range(my_i):
if my_list[i] == my_dict['Adrian'][i]:
A += 1
elif my_list[i] == my_dict['Bruno'][i]:
B += 1
elif my_list[i] == my_dict['Goran'][i]:
C += 1
a = False
b = False
c = False
a1 = 'Adrian'
b1 = 'Bruno'
c1 = 'Goran'
if A > B and A > C:
a = True
elif A < B and B > C:
b = True
elif A < C and B < C:
c = True
else:
a,b,c = True,True,True
print A,B,C
print max(A,B,C)
if a == True:
print a1
elif b == True:
print b1
elif c == True:
print c1
我想知道谁将会通过考试。
输入
9
AAAABBBBB
输出
4
Adrian
我没有得到任何错误,但这里只打印阿德里安。 Adrian = 4 Bruno = 3 Goran = 2
@Chalanthron这不是完全清楚你问这里。为了在StackOverflow上得到很好的答案,重要的是你要:(1)描述你想要做什么(2)提供什么令你困惑的最小可能的例子(3)正确地陈述你期望发生的事情(4)发生了什么。粘贴多行代码不是好习惯,在这里,您已经添加了整个脚本,这使我们很难帮助您。 – Wilduck 2014-09-30 16:10:01
如果有的话,编辑使事情不太清楚。请通读这个方便的清单:http://meta.stackoverflow。com/questions/260648/stack-overflow-question-checklist – jonrsharpe 2014-09-30 16:10:38
究竟是什么*“可能是这行是错的”*意思?!你有错误吗(提供完整的追溯)?意想不到的产出(提供投入,预期和实际产出)?你做了什么测试 - 你是否试图“打印”任何值以查看发生了什么?请**阅读**我刚刚发布的链接,并提供适当的信息。 – jonrsharpe 2014-09-30 16:41:19