[BOJ]1316組単語Checker(Python)
マイコード
import sys
N=int(sys.stdin.readline())
cnt=0
for i in range(N):
alli=list(map(str,sys.stdin.readline().strip()))
j=0
alzero=[0 for j in range(26)]
while(j<len(alli)):
alzero[ord(alli[j])-97]+=1
if alzero[ord(alli[j])-97]>1:
j=len(alli)
cnt-=1
break
if j!=(len(alli)-1):
if alli[j]==alli[j+1]:
while alli[j]==alli[j+1]:
j+=1
if j>=len(alli)-2:
break
j+=1
cnt+=1
print(cnt)
リファレンスコード
import sys
N=int(sys.stdin.readline())
cnt=N
for i in range(N):
alli=list(map(str,sys.stdin.readline().strip()))
for j in range(len(alli)-1):
if alli[j]==alli[j+1]:
pass
elif alli[j] in alli[j+1:]:
cnt-=1
break
print(cnt)
問題を解く考え
ブログに書かれている多くの文章と違って、今回の問題は的確な文章ではありません.間違いが見つからず、解決した問題を探し出す.検索の結果、複数行のコードをxiny文に変えることができることがわかりました.
少し前にPythonを勉強している間に文法を勉強しましたが、問題を解くときに思い出せなかったので使えず、Pythonのない長いコードを編んでしまいました.どんなに良い道具があっても、うまく使えなければ何の役にも立たない.Pythonの役に立つ文法を正しく使うために、私は多くの問題をしてそれを熟知しなければなりません.
Reference
この問題について([BOJ]1316組単語Checker(Python)), 我々は、より多くの情報をここで見つけました https://velog.io/@lj05117/BOJ-1316-그룹-단어-체커-Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol