コーディングテスト(バックグラウンドダイナミックプログラミング(15881号:Pen Pineapple Pen)
955 ワード
質問する
りんごとパイナップルとペンがいくつも並んでいます.これらの順番を変えずに、隣のものをつなぎ合わせて、どれだけのペンを作ることができるかを数えてみましょう.パイナップル-りんご-ペンです.
しかし、ペン、パイナップル、リンゴ、ペンが順番につながっている4つのものだけがペン-パイナップル-リンゴ-ペンと認定され、1本のペンは2本のペン-パイナップル-リンゴ-ペンには含まれません.また、ペン、リンゴ、パイナップル、ペンの順番でつながっている4つのアイテムは、ペン-パイナップル-リンゴ-ペンではありません.
入力
最初の行は物の総数nを与える.(1 ≤ n ≤ 1,000,000)
2行目では、物体のリストに長さnの文字列が与えられる.りんごはAで、パイナップルはPで、ペンはPで大文字と小文字を区別します.
しゅつりょく
作成できるペン-パイナップル-リンゴ-ペンの最大数を出力します.
コピー例入力1
15
ApPApPpAPpApPAp
コピー例出力1
2
コピー例入力2
7
pPApPAp
コピーサンプル出力2
1
私の答え:
TAKEAWAY:
感じ:
りんごとパイナップルとペンがいくつも並んでいます.これらの順番を変えずに、隣のものをつなぎ合わせて、どれだけのペンを作ることができるかを数えてみましょう.パイナップル-りんご-ペンです.
しかし、ペン、パイナップル、リンゴ、ペンが順番につながっている4つのものだけがペン-パイナップル-リンゴ-ペンと認定され、1本のペンは2本のペン-パイナップル-リンゴ-ペンには含まれません.また、ペン、リンゴ、パイナップル、ペンの順番でつながっている4つのアイテムは、ペン-パイナップル-リンゴ-ペンではありません.
入力
最初の行は物の総数nを与える.(1 ≤ n ≤ 1,000,000)
2行目では、物体のリストに長さnの文字列が与えられる.りんごはAで、パイナップルはPで、ペンはPで大文字と小文字を区別します.
しゅつりょく
作成できるペン-パイナップル-リンゴ-ペンの最大数を出力します.
コピー例入力1
15
ApPApPpAPpApPAp
コピー例出力1
2
コピー例入力2
7
pPApPAp
コピーサンプル出力2
1
私の答え:
n = int(input())
ppap_list = list(input())
d = [0] * 100
d[0] = ppap_list[0]
count = 0
for i in range(n-2):
if ppap_list[i] == 'p':
if ppap_list[i+1] == 'P':
if ppap_list[i+2] == 'A':
if ppap_list[i+3] == 'p':
count += 1
else:
continue
print(count)
其他回答:TAKEAWAY:
感じ:
Reference
この問題について(コーディングテスト(バックグラウンドダイナミックプログラミング(15881号:Pen Pineapple Pen)), 我々は、より多くの情報をここで見つけました https://velog.io/@oojjww1/코딩테스트백준-다이나믹-프로그래밍-15881번-Pen-Pineapple-Apple-Penテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol