algorithm/problem solving

acmicpc.net 1037번 약수, 1076번 저항, 1100 하얀 칸

qkqhxla1 2016. 6. 26. 19:48

https://www.acmicpc.net/problem/1037

약수 목록이 주어지면 해당 수를 구하는 문제. 


주어진 수중 가장 작은 수와 가장 큰 수를 곱하면 원래 수가 나온다.

# -*- encoding: cp949 -*-
N = int(raw_input())
yak = map(int,raw_input().split())
print min(yak)*max(yak)


https://www.acmicpc.net/problem/1076

파이썬으로 풀기에는 너무너무 쉬운 문제이다. 

# -*- encoding: cp949 -*-
ohm = {'black':0,'brown':1,'red':2,'orange':3,'yellow':4,'green':5,'blue':6,'violet':7,'grey':8,'white':9}
print (10*ohm[raw_input()]+ohm[raw_input()])*(10**ohm[raw_input()])


https://www.acmicpc.net/submit/1100


검정 칸과 하얀 칸이 번갈아 나오는데 하얀 칸 위에 말이 몇개나 있을까? 라는 문제. 간단하다.


# -*- encoding: cp949 -*-
chess = []
for i in range(8):
    chess.append(raw_input())
horse = 0
for i in range(0,8):
    if i%2==0:
        for j in range(0,8,2):
            if chess[i][j]=='F':
                horse += 1
    else:
        for j in range(1,8,2):
            if chess[i][j]=='F':
                horse += 1
print horse