扭蛋机
 
def niudan(n
):
    s
=''
    n
=int(n
)
    while n
:
        if n
%2==0:
            n
=(n
-2)/2
            s
+='3'
        else:
            n
=(n
-1)/2
            s
+='2'
    print(s
[::-1])
    return s
 
if __name__ 
== '__main__':
    n
=input()
    niudan
(n
)
 
计算表达式
 
class Solution:
    def calculate(self
,s
):
        """
        :type s: str
        :rtype: int
        """
        def precedence(op
):
            if op 
== '*' or op 
== '/':
                return 2
            else:
                return 1
        def cal(op
, op1
, op2
):
            if op 
== '*':
                return op1 
* op2
            
elif op 
== '/':
                return op1 
/ float(op2
)
            elif op 
== '+':
                return op1 
+ op2 
            
else:
                return op1 
- op2
        opstack 
= []
        operands 
= []
        
        idx 
= 0
        for i 
in range(idx
, len(s
)):
            if s
[i
] in '+-*/':
                operands
.append
(s
[idx
:i
])
                while len(opstack
) > 0 and precedence
(s
[i
]) <= precedence
(opstack
[-1]) and len(operands
) >= 2:
                    op 
= opstack
.pop
()
                    op2 
= int(operands
.pop
())
                    op1 
= int(operands
.pop
())
                    res 
= cal
(op
, op1
, op2
)
                    operands
.append
(res
)
                opstack
.append
(s
[i
])
                idx 
= i 
+ 1
        operands
.append
(s
[idx
:])
        while opstack
:
             op 
= opstack
.pop
()
             op2 
= int(operands
.pop
())
             op1 
= int(operands
.pop
())
             res 
= cal
(op
, op1
, op2
)
             operands
.append
(res
)
        return int(operands
[0])    
            
            
if __name__ 
== '__main__':
    n
=input()
    s
=Solution
()
    while n
!='END' or n
!='':
        if n
=='END' or n
=='':
            break
        print(s
.calculate
(n
))
        n
=input()
 
识别内网IP
 
def version(s
):
    s
=s
.split
(' ')
    s1
=s
[0].split
('.')
    s2
=s
[1].split
('.')
    print(s1
,s2
)
    for i 
in range(min(len(s1
),len(s2
))):
        
        if int(s1
[i
])==int(s2
[i
]):
            if i
==min(len(s1
),len(s2
))-1:
                print('0')
            if s1
[i
+1] or s2
[i
+1]:
                continue
        else:
            if int(s1
[i
])>int(s2
[i
]):
                print('1')
                break
            else:
                print('-1')
                break
s
=input()   
version
(s
) 
 
###顺时针打印矩阵
 
def printMatrix(matrix
):
    
    walked 
= [[False] * (len(matrix
[0])+1) for _ 
in range(len(matrix
)+1)]
    for j 
in range(len(walked
[-1])):
        walked
[-1][j
] = True
    for i 
in range(len(walked
)):
        walked
[i
][-1] = True
    len_row 
= len(matrix
) - 1
    len_col 
= len(matrix
[0]) - 1
    res 
= []
    i 
= 0
    j 
= 0
    direction 
= 0  
    while not walked
[i
][j
]:
        res
.append
(matrix
[i
][j
])
        walked
[i
][j
] = True
        if direction 
== 0: 
            if j 
< len_col 
and not walked
[i
][j
+1]:
                j 
+= 1
            else:
                direction 
= 1
                i 
+= 1
        elif direction 
== 1: 
            if i 
< len_row 
and not walked
[i
+1][j
]:
                i 
+= 1
            else:
                direction 
= 2
                j 
-= 1
        elif direction 
== 2:  
            if j 
> 0 and not walked
[i
][j
-1]:
                j 
-= 1
            else:
                direction 
= 3
                i 
-= 1
        elif direction 
== 3:  
            if i 
> 0 and not walked
[i
-1][j
]:
                i 
-= 1
            else:
                direction 
= 0
                j 
+= 1
    return res
n
=input()
n
=input()
m
=[]
while n
!='-1 -1':
    n
=n
.split
(' ')
    m
.append
(n
)
    n
=input()
s
=''
for i 
in printMatrix
(m
):
    s
+=i
    s
+=','
print(s
[:-1]) 
 
是否存在和为k的两个数
 
def find(numbers
,key
):
    dirc 
= {}
    for i 
in range(len(numbers
)): 
        if key
-numbers
[i
] in dirc
:
            dirc
[key
-numbers
[i
]] += [i
]
        else:
            dirc
[key
-numbers
[i
]] = [i
]
    for i 
in range(len(numbers
)-1):
        for j 
in range(i
+1,len(numbers
)):
            if numbers
[i
] + numbers
[j
] in dirc
:
                if i 
not in dirc
[numbers
[i
] + numbers
[j
]] and j 
not in dirc
[numbers
[i
] + numbers
[j
]]:
                    return True
num 
= input().split
(",")
numbers 
= [int(i
) for i 
in num
[0].split
()]
key 
= int(num
[-1])
print(find
(numbers
, key
))
                
                
                
        
    
                    转载请注明原文地址: https://win8.8miu.com/read-950258.html