例如:标准答案为“AC”,则对应的得分表如下表所示:
得分选项 | AC | A | C | B | DE | AB | …… |
对应二进制 | 10100 | 10000 | 00100 | 01000 | 00011 | 11000 | …… |
十进制数X | 20 | 16 | 4 | 8 | 3 | 24 | …… |
score[x] | 2 | 1 | 1 | 0 | 0 | 0 | 0 |
请输入标准答案:AC
所有可能的答案组合:
[ '','E', 'D', 'DE', 'C', 'CE', 'CD', 'CDE', 'B', 'BE', 'BD', 'BDE', 'BC', 'BCE', 'BCD', 'BCDE', 'A', 'AE', 'AD', 'ADE', 'AC', 'ACE', 'ACD', 'ACDE', 'AB', 'ABE', 'ABD', 'ABDE', 'ABC', 'ABCE', 'ABCD', 'ABCDE']
可得分的答案组合:
['C', 'A', 'AC']
该答案的所有得分选项为:
选项C的得分为:1
选项A的得分为:1
选项AC的得分为:2
def subset(st): #求所有非空子集
n=len(st); ss=[""]*2**n
for i in range(1,
t=i
for j in range(n):
if t%2==1:
ss[i]=
t//=2
return ss
def df(s): 1 #求下标
rel=0
for i in s:
rel+=
return rel
s=input("请输入标准答案:")
score=[0]*32
allans=subset("ABCDE")
print("所有可能的答案组合:")
print(allans)
dfans=subset(s)[1:]
print("可得分的答案组合:")
print(dfans)
for i in dfans[:len(dfans)-1]:
score[df(s)]=2
print("该题目的所有得分选项为:")
for i in range(32):
if
print("选项",allans[i],"的得分为:",score[i])
同类型试题
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2
y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2