실력진단


학습내용
완전탐색

import sys
INT_MAX = sys.maxsize #가독성을 위해
n=int(input())
arr=list(map(int, input().split()))
ans=INT_MAX
for i in range(n):
sum_val=0
for j in range(n):
sum_val+=arr[j]*abs(i-j)
ans=min(ans,sum_val)
print(ans)
- 괄호 쌍 만들어주기 3
https://www.codetree.ai/missions/5/problems/pair-parentheses-3?&utm_source=clipboard&utm_medium=text

#모범답안
string = input()
n=len(string)
cnt=0
for i in range(n):
for j in range(i+1,n):
if string[i]=='(' and string[j]==')':
cnt+=1
print(cnt)
# 내 답안
arr=list(input())
cnt=0
for i in range(len(arr)):
if arr[i] =='(':
for j in range(i+1,len(arr)):
if arr[j]==')':
cnt+=1
print(cnt)
- 일렬로 서있는 소 2

n=int(input())
arr=list(map(int,input().split()))
cnt=0
for i in range(n):
for j in range(i+1,n):
for k in range(j+1,n):
if arr[i]<=arr[j] and arr[j]<=arr[k]:
cnt+=1
print(cnt)
- 최고의 13위치
https://www.codetree.ai/missions/5/problems/best-place-of-13?&utm_source=clipboard&utm_medium=text

n=int(input())
arr=[list(map(int, input().split())) for _ in range(n)]
ans=0
for i in range(n):
sum_val=0
for j in range(n-2):
sum_val=arr[i][j]+arr[i][j+1]+arr[i][j+2]
ans=max(ans,sum_val)
print(ans)
- 체크판위에서2

n,m=map(int,input().split())
arr=[list(input().split()) for _ in range(n)]
cnt=0
# 0,0 -> i,j -> k,l -> n-1,m-1
for i in range(1,n):
for j in range(1,m):
for k in range(i+1,n-1):
for l in range(j+1,m-1):
if arr[0][0]!=arr[i][j] and arr[i][j]!=arr[k][l] \\
and arr[k][l] != arr[n-1][m-1]:#역슬래시 마지막에 쓰면 밑에줄도 이어지게 인식
cnt+=1
print(cnt)
'Computer Science > 알고리즘' 카테고리의 다른 글
[코드트리 챌린지] 릴레이 문제 복습 (0) | 2023.10.12 |
---|---|
최대공약수 최소공배수 알고리즘 (유클리드 호제법) (0) | 2023.10.06 |
[코드트리 챌린지] 객체 정렬, 시뮬레이션(배열-리스트, dx-dy technique) (0) | 2023.09.27 |
[코드트리 챌린지] 정렬 (0) | 2023.09.08 |
코드트리 챌린지 시작! (0) | 2023.09.08 |