1473.オウム
質問する
コード#コード#
N = int(input())
cnt, tcnt = 0, 0
log = [0]*N
word = [] # 앵무새가 말할 문장 들
for _ in range(N):
temp = input().split()
cnt += len(temp) # 총 몇개의 단어로 이루어져 있는지 계산
word.append(temp)
sent = input().split() # 실제로 들은 문장
while sent:
p = sent.pop(0) # 하나씩 뽑아가며 word 순회
tcnt += 1 # 총 받아적은 단어 수를 알기 위함
for j in range(N): # word안에 비교
flag = False
if log[j] <= len(word[j])-1 and p == word[j][log[j]]:
# 앵무새가 말할 문장 중 몇번째를 말해야되는지 기록한것과
# 지금 pop한게 같으면
word[j][log[j]] = 0 # 어.. 이거 필요없는거임
log[j] += 1 # 앞으로 몇번째를 말해야되는지 기록
flag = True
break
if j == (N-1) and flag == False:
# word 다 돌았는데도 맞는게 없으면
print('Impossible')
exit(0)
if sent or cnt != tcnt: print('Impossible')
else: print('Possible')
に答える
ちょっと、効率的ではありませんが、最初はしょっぱいものがもったいないので厚めに貼ってあります.
今のところ和弦を思い切って捨てるのは難しい...夢中になる.結論は正解が出ていればいい.
再包装が必要ではなく、必要です.
まずはflag部分から...私はちょうど解いて、私はどうしてこのようにすることを理解していないで、ほほほ
Reference
この問題について(1473.オウム), 我々は、より多くの情報をここで見つけました https://velog.io/@jpdev/14713.-앵무새テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol