SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
문제접근법 :
LCS를 이용한 문제입니다.
최장공통부분문자의 길이가 즉 가장 유사도가 높고
백분율 이용해서 답을 내주시면 됩니다.
소스코드:
from collections import defaultdict
#import sys
#sys.stdin = open("input.txt","r")
Test = int(input())
for test in range(1,Test+1):
n = int(input())
s1 = input()
s2 = input()
dp = [[0]*(n+1) for i in range(n+1)]
res = 0
for i in range(n):
for j in range(n):
if s1[i]==s2[j]:
dp[i+1][j+1]=dp[i][j]+1
else:
dp[i+1][j+1]=max(dp[i+1][j],dp[i][j+1])
res = max(res,dp[i+1][j+1])
print('#%d %.2f'%(test,res*100/n))
궁금한점 혹은 모르는점 어떤 질문이든 댓글은 언제나 환영입니다.
'SWEA' 카테고리의 다른 글
[SWEA] 1266. [S/W 문제해결 응용] 9일차 - 소수 완제품 확률 D6(python) (0) | 2025.01.15 |
---|---|
1263. [S/W 문제해결 응용] 8일차 - 사람 네트워크2 (python) (0) | 2025.01.10 |
[SWEA]1260. [S/W 문제해결 응용] 7일차 - 화학물질2 [Java] (0) | 2024.12.10 |
[SWEA] 1258. [S/W 문제해결 응용] 7일차 - 행렬찾기 (JAVA) (0) | 2024.12.10 |
[SWEA]1251. [S/W 문제해결 응용] 4일차 - 하나로 (c++) (1) | 2024.12.09 |