知恵袋のアルファベットを並べる順列の問題をPythonで解いてみた。(2)

 知恵袋のアルファベットを並べる順列の問題Pythonで解いてみました。(^_^;

7つのアルファベット、「 S,U,U,G,A,K,U 」有ります。
7つのアルファベットを並べて、U、が2つ以上隣り合わない順列数を求めよ。

 一度、文字列にして、その文字列に'UU'が含まれていないか調べています。また、set(itertools.permutations())で同じものを含む順列を生成しています。

● SUUGAKU.py

# coding: UTF-8
# SUUGAKU.py

import itertools

P = 'SUUGAKU'
c = 0
for p in set(itertools.permutations(P)):   # 同じものを含む順列
  s = ''.join(p)
  if 'UU' not in s:
    c+=1
print(c)

●実行結果

240

※参考URL
文字列操作の比較表: Ruby, Python, JavaScript, Perl, C++

Python入門[2&3対応]

Python入門[2&3対応]