Skip to content

Commit a4d1f4c

Browse files
committed
Solve data structure problems
1 parent 50e3bef commit a4d1f4c

File tree

3 files changed

+72
-0
lines changed

3 files changed

+72
-0
lines changed

baekjoon/1158/neva/1158.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
from sys import stdin
2+
3+
N, K = map(int, stdin.readline().strip().split(' '))
4+
arr = [_ for _ in range(1, N+1)]
5+
6+
remove_i = 0
7+
josephus = []
8+
for size in range(N, 0, -1):
9+
remove_i = (remove_i + (K - 1)) % size
10+
josephus.append(arr.pop(remove_i))
11+
12+
print("<%s>" % ", ".join(map(str, josephus)))

baekjoon/18258/neva/18258.py

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
from sys import stdin
2+
3+
class Queue:
4+
5+
def __init__(self):
6+
self.queue = list()
7+
self.qbp = 0
8+
9+
def push(self, x):
10+
self.queue.append(x)
11+
12+
def pop(self):
13+
if self.empty():
14+
return -1
15+
else:
16+
self.qbp += 1
17+
return self.queue[self.qbp - 1]
18+
19+
def size(self):
20+
return len(self.queue) - self.qbp
21+
22+
def empty(self):
23+
if self.size() == 0:
24+
return 1
25+
else:
26+
return 0
27+
28+
def front(self):
29+
if self.empty():
30+
return -1
31+
else:
32+
return self.queue[self.qbp]
33+
34+
def back(self):
35+
if self.empty():
36+
return -1
37+
else:
38+
return self.queue[-1]
39+
40+
queue = Queue()
41+
for _ in range(int(stdin.readline())):
42+
cmd_args = stdin.readline().split()
43+
44+
if cmd_args[0] == "push":
45+
getattr(queue, cmd_args[0])(cmd_args[1])
46+
else:
47+
print(getattr(queue, cmd_args[0])())

baekjoon/2164/neva/2164.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
from sys import stdin
2+
3+
N = int(stdin.readline())
4+
5+
square = 2
6+
if N <= 2:
7+
print(N)
8+
else :
9+
while True:
10+
square *= 2
11+
if N <= square:
12+
print((N - (square // 2)) * 2)
13+
break

0 commit comments

Comments
 (0)