File tree Expand file tree Collapse file tree 4 files changed +134
-0
lines changed
Expand file tree Collapse file tree 4 files changed +134
-0
lines changed Original file line number Diff line number Diff line change 1+ def solution (id_list , report , k ):
2+ answer = []
3+ # output : answer(list)
4+ #0 delete duple- suiting apply
5+ report_li = []
6+ for n in report :
7+ if n not in report_li :
8+ report_li .append (n )
9+ #1. report : 1d -> 2d with splite both
10+ for i in range (len (report_li )):
11+ report_li [i ]= report_li [i ].split ()
12+ #2. report : list -> dict
13+ v = []
14+ for i in range (len (id_list )):
15+ li = []
16+ for m in range (len (report_li )):
17+ if id_list [i ] == report_li [m ][0 ]:
18+ li .append (report_li [m ][1 ])
19+ v .append (li )
20+ dict1 = dict (zip (id_list ,v ))
21+
22+ #3. count suiting
23+ count_li = []
24+ for i in range (len (id_list )):
25+ count = 0
26+ for values in dict1 .values ():
27+ for m in range (len (values )):
28+ if id_list [i ] == values [m ]:
29+ count += 1
30+ count_li .append (count )
31+ dict2 = dict (zip (id_list ,count_li ))
32+
33+
34+ # 4. suting list
35+ suiting_li = []
36+ for suiting ,v in dict2 .items () :
37+ if v >= k :
38+ suiting_li .append (suiting )
39+ # 5. find the num of suited_id depends on suiting_id
40+ for m ,n in dict1 .items ():
41+ count = 0
42+ for i in range (len (n )):
43+ for z in suiting_li :
44+ if z == n [i ]:
45+ count += 1
46+ answer .append (count )
47+
48+ return answer
Original file line number Diff line number Diff line change 1+ def solution (s ):
2+ answer = 0
3+ tmp = []
4+ # 1. delete blank and change type spring to list
5+ s = s .split ()
6+ for i in range (len (s )):
7+ # if z exist, then pop all elements in tmp
8+ if s [i ] == "Z" :
9+ tmp .pop ()
10+ continue
11+ tmp .append (s [i ])
12+ # sum about tmp
13+ sum = 0
14+ for i in range (len (tmp )):
15+ sum += int (tmp [i ])
16+ print (sum )
17+ answer = sum
18+ return answer
Original file line number Diff line number Diff line change 1+ def goTo (start ,d ):
2+ # start : starting poing , d : 1 dirrection
3+ # output : endpoint []
4+ if d == "U" : # up
5+ end = [start [0 ], start [1 ]+ 1 ]
6+ elif d == "D" : # down
7+ end = [start [0 ], start [1 ]- 1 ]
8+ elif d == "R" :# Right
9+ end = [start [0 ]+ 1 , start [1 ]]
10+ elif d == "L" : # Left
11+ end = [start [0 ]- 1 , start [1 ]]
12+ return end
13+
14+ def solution (dirs ):
15+ answer = 0
16+ start = [0 ,0 ]
17+ end = [0 ,0 ]
18+ allRoot = [[]]
19+ # record root about all dirs
20+ for d in dirs :
21+ dupli = False
22+ end = goTo (start ,d )
23+ # Find is it exit in map
24+ if - 5 > end [0 ] or end [0 ]> 5 or - 5 > end [1 ] or end [1 ]> 5 :
25+ continue
26+ newroot = [start , end ]
27+ print ("d" ,d )
28+ # Search same root
29+ for i in range (len (allRoot )) :
30+ if allRoot [i ] == [start ,end ] or allRoot [i ] == [end ,start ] :
31+ dupli = True
32+ break
33+ # update root in allRoot
34+ if dupli == False :
35+ allRoot .append (newroot )
36+ start = end
37+
38+ del allRoot [0 ]
39+ answer = len (allRoot )
40+ return answer
Original file line number Diff line number Diff line change 1+ def solution (s ):
2+ answer = True
3+ print (s )
4+ #1. s은 ( 로 시작, ) 가 끝
5+ if s [0 ] == ")" :
6+ answer = False
7+ return answer
8+ elif s [- 1 ] == "(" :
9+ answer = False
10+ return answer
11+ #2.) 와 (의 개수 동일
12+ left = 0
13+ right = 0
14+ for n in s :
15+ if n == "(" :
16+ left += 1
17+ elif n == ")" :
18+ right += 1
19+ else :
20+ answer = False
21+ return answer
22+
23+ if left != right :
24+ answer = False
25+ return answer
26+
27+
28+ return True
You can’t perform that action at this time.
0 commit comments