zoukankan      html  css  js  c++  java
  • SRM146 DIV1 600

    枚举所有情况,依次判断情况是否合法,合法则计数器加一。这里的关键是给定secret和guess如何生成result

     1 import re
     2 
     3 def processResult(result):
     4     r = re.search('(d)b (d)w', result)
     5     b = int(r.group(1))    
     6     w = int(r.group(2))
     7     return (b, w)
     8 
     9 def isvalid(x, guesses, results):
    10     lie = 0
    11     for i in range(0, len(guesses)):
    12         g = guesses[i]
    13         r = results[i]
    14         w = 0
    15         b = 0
    16         gflags = [False, False, False, False]
    17         xflags = [False, False, False, False]
    18         for j in range(0, 4):
    19             if x[j] == g[j]:
    20                 b = b + 1
    21                 xflags[j] = gflags[j] = True
    22 
    23         for j in range(0, 4):
    24             if not gflags[j]:
    25                 for k in range(0, 4):
    26                     if not xflags[k] and g[j] == x[k]:
    27                         xflags[k] = True
    28                         w = w + 1
    29                         break
    30 
    31         if not (b == r[0] and w == r[1]):
    32             lie = lie + 1
    33             if lie > 1:
    34                 return False
    35 
    36     if lie == 1:
    37         return True
    38     else:
    39         return False
    40     
    41 class Masterbrain:
    42     def possibleSecrets(self, guesses, results):
    43         results = [processResult(x) for x in results]
    44         tot = 0
    45         for x0 in range(1, 8):
    46             for x1 in range(1, 8):
    47                 for x2 in range(1, 8):
    48                     for x3 in range(1, 8):
    49                         x = str(x0 * 1000 + x1 * 100 + x2 * 10 + x3)
    50                         if isvalid(x, guesses, results):
    51                             tot = tot + 1
    52 
    53         return tot
    View Code
  • 相关阅读:
    小div在大div中垂直居中方式
    sublime中Vue高亮插件安装
    vue脚手架创建项目(推荐)
    搭建Vue脚手架
    html解决空格显示问题
    css3实现半圆和圆效果
    MySQL通过 LOAD DATA INFILE 批量导入数据
    jQuery ajax 提交表单图片
    Sqlserver风格规范
    前端代码风格规范总结
  • 原文地址:https://www.cnblogs.com/valaxy/p/3400598.html
Copyright © 2011-2022 走看看