문제 바로가기
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
나의 코드 및 설명
t = int(input())
for test_case in range(1,t+1):
n = int(input())
num_list = list(map(int ,input().split()))
max_ans = -1 #단조 증가하는 수가 아니면 -1이 출력될 것이다.
#두 개의 숫자를 뽑는 2중 for문
for i in range(n-1):
for j in range(i+1, n):
check = num_list[i] * num_list[j] #우선 곱해본다.
check_list = list(map(int, str(check)))
danzo = 1 #단조 = 1
for k in range(len(check_list)-1):
if check_list[k] > check_list[k+1]: #만약 다음 숫자보다, 현재 숫자가 더 크다면
danzo = 0 #단조 증가하는 수가 아니다.
break
if danzo == 1: #단조일 때, 최대값을 찾는다.
if max_ans < check:
max_ans = check
print(max_ans)
'SWEA (SW Expert Academy) > D3' 카테고리의 다른 글
[SWEA/D3] 16910 원 안의 점 (0) | 2023.05.09 |
---|---|
[SWEA/D3] 6808 규영이와 인영이의 카드게임 / 백트래킹 (0) | 2023.05.08 |
[SWEA/D3] 5948 새샘이의 7-3-5 게임 / 백트래킹 (1) | 2023.05.07 |
[SWEA/D3] 3499 퍼펙트 셔플 / stack (0) | 2023.05.07 |
[SWEA/D3] 1234 비밀번호 / stack (0) | 2023.05.07 |