Skip to content

Commit 2d6b3a2

Browse files
committed
Python basic problems solved
1 parent e4ec17c commit 2d6b3a2

36 files changed

+1021
-3
lines changed

cpp/a.out

64.1 KB
Binary file not shown.

cpp/test.cpp

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
#include <iostream>
2+
#include <vector>
3+
#include <stdio.h>
4+
using namespace std;
5+
6+
int main()
7+
{
8+
// Create a vector containing integers
9+
vector<int> v = {7, 5, 16, 8};
10+
11+
// Add two more integers to vector
12+
v.push_back(25);
13+
v.push_back(13);
14+
15+
// Iterate and print values of vector
16+
for(int n : v) {
17+
// cout << n << '\n';
18+
}
19+
20+
vector<pair<int, int>> obj(2);
21+
for(pair<int, int> n : obj) {
22+
cout << n.first << '\n';
23+
cout << n.second << '\n';
24+
}
25+
26+
int m = 2;
27+
int k = 3;
28+
cout << '\n';
29+
vector<vector<int>> vv(m + 1, vector<int>(k + 1));
30+
cout << vv.size() << '\n';
31+
32+
cout << '\n';
33+
for(vector<int> a : vv) {
34+
cout << a.size() << '\n';
35+
}
36+
37+
}

python/10172/1978.py

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import sys
2+
f = sys.stdin.readline
3+
N = int(f())
4+
st = ''
5+
for n in range(2,N):
6+
def foo(num):
7+
if num > 1:
8+
for i in range(2, num//2):
9+
if (num % i) == 0:
10+
#print(num, "is not a prime number")
11+
return 0
12+
else:
13+
#print(num, "is a prime number")
14+
else:
15+
#print(num, "is not a prime number")
16+
return 0
17+
return 1
18+
if foo(n):
19+
if st != '':
20+
st += ','
21+
st += "%d" % (n)
22+
print(st)

python/10172/2581.py

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import sys
2+
M=0xf4240;e=[1 for i in range(M)]
3+
for i in range(2,M):
4+
for j in range(i,M,i):
5+
if j==i:continue
6+
else:e[j]=0
7+
e[1]=0;f=sys.stdin.readline
8+
while 1:
9+
n=int(f())
10+
if n:print(sum(e[n+1:2*n+1]))
11+
else:break

python/10172/2581_.py

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
a,b=int(input()),int(input());o=[_ for _ in range(a,b+1) if len([d for d in range(1,_+1) if _%d==0])==2];print(f'{sum(o)}\n{o[0]}' if o else -1)

python/10172/9020.py

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
ps = [0] + [1] * 246911
2+
for _ in range(2, 497):
3+
i = _ - 1
4+
if ps[i]:
5+
for j in range(i + _, 246912, _):
6+
ps[j] = 0
7+
T=int(input())
8+
for t in range(T):
9+
n=int(input())
10+
z=x=y=n
11+
for i in range(n):
12+
for j in range(n):
13+
if n < i+j: break
14+
if ps[i+1] and ps[j+1] and i+j==n:
15+
if abs(i-j) < z: z=abs(i-j);x=i;y=j
16+
print(x,y)

python/10172/a.out

12.3 KB
Binary file not shown.

python/10172/first.py

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
import sys
2+
f = sys.stdin.readline
3+
T = int(f())
4+
ans=[0 for _ in range(50)]
5+
for _ in range(T):
6+
arr = list(map(int,f().split()))
7+
x,y = arr[0],arr[1]
8+
tar = y-x
9+
for tar in range(1,200):
10+
dp=[]
11+
for i in range(tar):
12+
def foo():
13+
for j in range(len(dp)-2,0,-1):
14+
if dp[j-1] == dp[j] == dp[j+1]:
15+
dp[j] += 1
16+
return 1
17+
if dp[j-1]-1 == dp[j] == dp[j+1]:
18+
dp[j] += 1
19+
return 1
20+
return 0
21+
if not foo():
22+
dp.append(1)
23+
#print(dp,sum(dp))
24+
ans[len(dp)] += 1
25+
#print(tar,len(dp))
26+
print(ans)
27+
28+
# 1 1 1
29+
# 2 2 1 1
30+
# 3 3 1 1 1
31+
# 4 3 1 2 1
32+
# 5 4 1 2 1 1
33+
# 6 4 1 2 2 1
34+
# 7 5 1 2 2 1 1
35+
# 8 5 1 2 2 2 1
36+
# 9 5 1 2 3 2 1
37+
# 10 6 1 2 3 2 1 1
38+
# 11 6 1 2 3 2 2 1
39+
# 12 6 1 2 3 3 2 1
40+
# 13 7 1 2 3 3 2 1 1
41+

python/10172/second.py

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import sys
2+
f = sys.stdin.readline
3+
T = int(f())
4+
for t in range(T):
5+
x,y=map(int,f().split())
6+
tar = y-x
7+
s=0
8+
spd=1
9+
m=1
10+
n=0
11+
while s < tar:
12+
s+= spd
13+
print('spd',spd)
14+
if not s < tar: break
15+
s+= spd
16+
print('spd',spd)
17+
spd+=1
18+
19+
print(spd)

python/10172/test.cpp

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#include <stdio.h>
2+
3+
int main()
4+
{
5+
int a,b;
6+
scanf("%d%d", &a, &b);
7+
8+
printf("%.0f\n", 1.0*a/b);
9+
10+
return 0;
11+
}

python/10172/test2.cpp

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#include <stdio.h>
2+
3+
int main(void)
4+
{
5+
int num = 0;
6+
int a[1000];
7+
int count = 0;
8+
9+
scanf("%d", &num);
10+
for (int i = 0; i < num; i++)
11+
{
12+
scanf("%d", &a[i]);
13+
for (int j = 2; j <= a[i]; j++)
14+
{
15+
if (a[i] % j == 0)
16+
{
17+
if (a[i] == j)
18+
count++;
19+
else
20+
{
21+
break;
22+
}
23+
}
24+
}
25+
}
26+
printf("%d", count);
27+
28+
return 0;
29+
}

python/10172/third.py

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import sys
2+
import math
3+
T = int(sys.stdin.readline())
4+
for t in range(T):
5+
x, y = [int(k) for k in sys.stdin.readline().split()]
6+
d = y - x
7+
if d < 3:
8+
print(d)
9+
else:
10+
p = int(math.sqrt(d))
11+
if d > p*(p + 1):
12+
p += 1
13+
if d > p*p:
14+
p *= 2
15+
else:
16+
p = p * 2 - 1
17+
print(p)

python/12865/fifth.py

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import sys
2+
f = sys.stdin.readline
3+
dbg = 1
4+
if dbg: f = open('24.txt').readline
5+
N,K = map(int, f().split())
6+
W = [0];V = [0];M=0
7+
for _ in range(N):
8+
w, v = map(int, f().split())
9+
if w <= K:
10+
W.append(w);V.append(v)
11+
M += 1
12+
arr = [[''] * (K+1) for _ in range(M+1)]
13+
def visit(i, j):
14+
if arr[i][j] != '': return arr[i][j]
15+
if i == 0 or j == 0: rtv = 0
16+
elif j < W[i]: rtv = visit(i-1, j)
17+
else:
18+
a = visit(i-1, j)
19+
b = V[i] + visit(i-1, j-W[i])
20+
rtv = max(a, b)
21+
arr[i][j] = rtv
22+
return rtv
23+
print(visit(M, K))
24+
if dbg:
25+
for a in arr: print(a)

python/12865/fourth.py

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import sys
2+
f = sys.stdin.readline
3+
dbg = 1
4+
if dbg: f = open('24.txt').readline
5+
N,K = map(int, f().split())
6+
W = [];V = []
7+
for n in range(N):
8+
w,v = map(int, f().split())
9+
if w <= K: W.append(w);V.append(v)
10+
else: N -= 1
11+
dp = [ [ 0 for _ in range(N+1) ] for _ in range(K+1) ]
12+
for i in range(N-1,-1,-1):
13+
for j in range(K+1):
14+
dp[j][i] = max(dp[j][i], dp[j][i+1])
15+
if W[i] <= j:
16+
dp[j][i] = max(dp[j][i], V[i] + dp[j-W[i]][i+1])
17+
# for d in dp: print(d)
18+
print(max(dp[K]))

python/12865/j.txt

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
3 5
2+
4 10
3+
2 4
4+
3 7

python/12865/ks.py

+56
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# 해당문제 강의 https://www.youtube.com/watch?v=xOlhR_2QCXY
2+
# DP 강의 1 http://bopace.github.io/python/2016/04/27/python-and-dp/
3+
# DP 강의 2 https://skerritt.blog/dynamic-programming/
4+
5+
6+
# recursive solution
7+
8+
# def KS(n, c):
9+
# if n == 0 or c == 0:
10+
# result = 0
11+
# elif w[n] > c:
12+
# result = KS(n-1, c)
13+
# else:
14+
# temp1 = KS(n-1, c)
15+
# temp2 = v[n] + KS(n-1, c-w[n])
16+
# result = max(temp1, temp2)
17+
# return result
18+
#
19+
#
20+
# N, C = map(int, input().split())
21+
# w = [0]
22+
# v = [0]
23+
# for _ in range(N):
24+
# a, b = map(int, input().split())
25+
# w.append(a)
26+
# v.append(b)
27+
# print(w)
28+
# print(v)
29+
# print(KS(N, C))
30+
31+
# memorize intermediate results
32+
33+
def KS(n, c):
34+
if arr[n][c] != 'undefined': return arr[n][c]
35+
if n == 0 or c == 0:
36+
result = 0
37+
elif w[n] > c:
38+
result = KS(n-1, c)
39+
else:
40+
temp1 = KS(n-1, c)
41+
temp2 = v[n] + KS(n-1, c-w[n])
42+
result = max(temp1, temp2)
43+
arr[n][c] = result
44+
return result
45+
46+
47+
N, C = map(int, input().split())
48+
w = [0]
49+
v = [0]
50+
arr = [['undefined'] * (C+1) for _ in range(N+1)]
51+
52+
for _ in range(N):
53+
a, b = map(int, input().split())
54+
w.append(a)
55+
v.append(b)
56+
print(KS(N, C))

python/12865/third.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
dbg = 1
33
prt = 0
44
f = sys.stdin.readline
5-
if dbg: f = open('0.txt').readline
5+
if dbg: f = open('14.txt').readline
66
N,K = map(int,f().split())
77

88
W = [ 0 for _ in range(N) ]
@@ -12,7 +12,7 @@
1212

1313
M = K + 10
1414
# if dbg: M = 11
15-
dp1 = [ 0 for _ in range(M) ]
15+
dp1 = [ 0 for _ in range(M) ] # 배운점 : 여기 초기화를 -1로 했었다가. 물건이 한개도 안넣어지는 경우 0이 나와야 하는데 -1이 나와서 WA가 떳다.
1616
dp2 = [ 0 for _ in range(M) ]
1717

1818
if W[0] <= K:
@@ -30,7 +30,7 @@ def foo ():
3030
if w <= K: now[w] = max(prev[w], v)
3131
for j in range(0, K):
3232
now[j] = max(prev[j], now[j])
33-
if j + w <= K and 0 != prev[j]:
33+
if j + w <= K and 0 != prev[j]: # 배운점 : 앞노드가 존재 할때만(무게가0이 아닐때만 조건이 필요했다.)
3434
now[j+w] = max(now[j+w], prev[j] + v)
3535
if prt: print(prev);print(now)
3636
foo();print(max(max(dp1),max(dp2)))

python/12920/264.txt

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
7 19
2+
9 89 1
3+
8 80 1
4+
1 32 1
5+
6 68 1
6+
2 74 1
7+
3 42 1
8+
7 2 1

python/12920/27.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
2 3
2+
2 7 1
3+
1 9 3

python/12920/37.txt

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
9 9
2+
2 9 1
3+
1 7 1
4+
3 10 1
5+
2 2 1
6+
3 3 1
7+
4 9 1
8+
2 10 1
9+
2 8 1
10+
3 2 1

0 commit comments

Comments
 (0)