Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

codingfarm

파이썬 참고용 코드 본문

Programming Language/Python

파이썬 참고용 코드

scarecrow1992 2021. 4. 2. 22:59
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from queue import PriorityQueue
import random
 
class Human:
    age = 0
    weight = 0
    height = 0
 
    def __init__(self, age = 20, weight= 70, height=180):
        self.age = age
        self.weight = weight
        self.height = height
 
    def __lt__(self, other):
        if self.age != other.age:
            return self.age < other.age
        elif self.weight != other.weight :
            return self.weight < other.weight
        else :
            return self.height < other.height
 
    def __print__(self):
        print("age : " + str(self.age) + ", weight : " + str(self.weight) + ", height : " + str(self.height))
        # print("age : " + str(self.age))
 
# 우선순위 큐
pq = PriorityQueue()
list = []
 
for i in range(0,20):
    pq.put(Human(10 + random.randrange(0,20), 60 + random.randrange(0,10) , 160 + random.randrange(0,20)))
    list.append(Human(10 + random.randrange(0,20), 60 + random.randrange(0,10) , 160 + random.randrange(0,20)));
 
while not pq.empty():
    pq.get().__print__()
 
list.sort()
print(list)
 
# 스택
stack = []
for i in range(010):
    stack.append(i)
 
while len(stack) != 0:
    print(stack.pop())
 
 
 
cs

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
 
 
 
def solution(table, languages, preference):
    ans = ""
    dictionary = []
    n = len(languages)
 
    for i in range(05):
        dictionary.append({})
        for j in range(05):
            #dictionary[i].append({table[i][j] : n - j})
            dictionary[i][table[i][j]] = 5 - j
 
    high_languages = []
    high_score = -1
    for i in range(05):
        sums = 0
        for j in range(03):
            sums = sums + (preference[j] * dictionary[i][languages[j]])
        if sums > high_score:
            high_score = sums
            high_languages.clear()
            high_languages.append(languages[j])
        elif sums == high_score:
            high_languages.append(languages[j])
 
    high_languages.sort()
    ans = high_languages[0]
    return ans
 
 
def Input(n):
    table = []
 
    for i in range(0,5):
        table.append(input().split(" "))
    languages = (input().split(" "))
    preference = (input().split(" "))
 
    return table, languages, preference
 
= input()
 
table, languages, preference = Input(n)
 
ret = solution(table, languages, preference)
 
 
 
"""
3
JAVA JAVASCRIPT SQL PYTHON C#
JAVASCRIPT JAVA PYTHON SQL C++
C C++ PYTHON JAVA JAVASCRIPT
JAVA JAVASCRIPT PYTHON KOTLIN PHP
C++ C# JAVASCRIPT C JAVA
PYTHON C++ SQL
7 5 5
"""
cs

 

참고삼아~

 

 

 

'Programming Language > Python' 카테고리의 다른 글

duelyst 이미지 긁어오기  (0) 2020.07.31
Comments