diff --git "a/\352\271\200\354\230\210\352\262\275/11478 \354\204\234\353\241\234 \353\213\244\353\245\270 \353\266\200\353\266\204 \353\254\270\354\236\220\354\227\264\354\235\230 \352\260\234\354\210\230.py" "b/\352\271\200\354\230\210\352\262\275/11478 \354\204\234\353\241\234 \353\213\244\353\245\270 \353\266\200\353\266\204 \353\254\270\354\236\220\354\227\264\354\235\230 \352\260\234\354\210\230.py" new file mode 100644 index 0000000..854d700 --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/11478 \354\204\234\353\241\234 \353\213\244\353\245\270 \353\266\200\353\266\204 \353\254\270\354\236\220\354\227\264\354\235\230 \352\260\234\354\210\230.py" @@ -0,0 +1,11 @@ +str = input() +arr = [] +#문자열을 list에 추가 +for i in range(len(str)): + for j in range(len(str)-i): + arr.append(str[j:j+1+i]) +#중복 제거 +arr = set(arr) +arr = list(arr) +#출력 +print(len(arr)) \ No newline at end of file diff --git "a/\352\271\200\354\230\210\352\262\275/1225 \354\235\264\354\203\201\355\225\234 \352\263\261\354\205\210.py" "b/\352\271\200\354\230\210\352\262\275/1225 \354\235\264\354\203\201\355\225\234 \352\263\261\354\205\210.py" new file mode 100644 index 0000000..7aa43ea --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/1225 \354\235\264\354\203\201\355\225\234 \352\263\261\354\205\210.py" @@ -0,0 +1,7 @@ +a, b = input().split() +listA = list(map(int, a)) +listB = list(map(int, b)) + +print(sum(listA)*sum(listB)) + +#print(sum) \ No newline at end of file diff --git "a/\352\271\200\354\230\210\352\262\275/16503 \352\264\204\355\230\270 \354\227\206\353\212\224 \354\202\254\354\271\231\354\227\260\354\202\260.py" "b/\352\271\200\354\230\210\352\262\275/16503 \352\264\204\355\230\270 \354\227\206\353\212\224 \354\202\254\354\271\231\354\227\260\354\202\260.py" new file mode 100644 index 0000000..c736291 --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/16503 \352\264\204\355\230\270 \354\227\206\353\212\224 \354\202\254\354\271\231\354\227\260\354\202\260.py" @@ -0,0 +1,32 @@ +#입력받기 +k1, o1, k2, o2, k3 = input().split() +k1, k2, k3 = int(k1), int(k2), int(k3) + +#수를 입력해 계산 +def calculate(a, op, b): + if op == '+': + ans = a + b + elif op == '-': + ans = a - b + elif op == '*': + ans = a * b + elif op == '/': + ans = a // b + if a<0 or b<0: + ans = ans+1 + return ans + +# 앞부터 연산 +temp = calculate(k1, o1, k2) +ans1 = calculate(temp, o2, k3) +# 뒤부터 연산 +temp = calculate(k2, o2, k3) +ans2 = calculate(k1, o1, temp) + +# 출력하기 +if ans1 < ans2: + print(ans1) + print(ans2) +else: + print(ans2) + print(ans1) \ No newline at end of file diff --git "a/\352\271\200\354\230\210\352\262\275/1699 \354\240\234\352\263\261\354\210\230\354\235\230 \355\225\251.py" "b/\352\271\200\354\230\210\352\262\275/1699 \354\240\234\352\263\261\354\210\230\354\235\230 \355\225\251.py" new file mode 100644 index 0000000..8dbf000 --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/1699 \354\240\234\352\263\261\354\210\230\354\235\230 \355\225\251.py" @@ -0,0 +1,12 @@ +n = int(input()) + +dp = [i for i in range (n+1)] +print(dp) +for i in range(1, n+1): + for j in range(1, i): + if (j * j) > i: + break + if dp[i] > dp[i - j * j] + 1: # dp[i] = min(dp[i], dp[i - j * j] + 1) 시간초과 + dp[i] = dp[i - j * j] + 1 + +print(dp[n]) \ No newline at end of file diff --git "a/\352\271\200\354\230\210\352\262\275/18247 \352\262\250\354\232\270\354\231\225\352\265\255 \355\213\260\354\274\223 \354\230\210\353\247\244.py" "b/\352\271\200\354\230\210\352\262\275/18247 \352\262\250\354\232\270\354\231\225\352\265\255 \355\213\260\354\274\223 \354\230\210\353\247\244.py" new file mode 100644 index 0000000..f9f8dbd --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/18247 \352\262\250\354\232\270\354\231\225\352\265\255 \355\213\260\354\274\223 \354\230\210\353\247\244.py" @@ -0,0 +1,7 @@ +t = int(input()) +for i in range(t): + n, m = map(int, input().split()) + if m<4 or n<12: # L=12행 + print(-1) + else: + print(11*m+4) \ No newline at end of file diff --git "a/\352\271\200\354\230\210\352\262\275/60057 \353\254\270\354\236\220\354\227\264 \354\225\225\354\266\225.py" "b/\352\271\200\354\230\210\352\262\275/60057 \353\254\270\354\236\220\354\227\264 \354\225\225\354\266\225.py" new file mode 100644 index 0000000..d4027b7 --- /dev/null +++ "b/\352\271\200\354\230\210\352\262\275/60057 \353\254\270\354\236\220\354\227\264 \354\225\225\354\266\225.py" @@ -0,0 +1,38 @@ +def solution(s): + res=list() # 문자열 길이를 저장할 list + + # 문자열 길이가 1일 때 처리 + if len(s)==1: + return 1 + + for j in range(1, len(s)//2+1): #j는 slice 단위 + cnt=1 + ss="" + temp="" + for i in range(0,len(s)+1,j): + if s[i:i+j]==temp: + cnt+=1 + else: + if cnt==1: + ss+=temp + else: + ss+=str(cnt)+temp + cnt=1 + temp=s[i:i+j] + + # 뒤쪽 문자열 처리 + if cnt==1: + ss+=temp + else: + ss+=str(cnt)+temp + res.append(len(ss)) + + # 가장 짧은 것의 길이 return + return min(res) + + +print(solution("aabbaccc")) +print(solution("ababcdcdababcdcd")) +print(solution("abcabcdede")) +print(solution("abcabcabcabcdededededede")) +print(solution("xababcdcdababcdcd"))