ベルク・カッツェ
トモエさんが端
2×2×2×2=16
トモエさんが端から一つ内側
2×2×2=8
トモエさんが真ん中
2×2=4
合計28通りになりました。
それにしても子供たち、仲悪すぎますね。
   6月29日(木) 0:08:10     52560
紫の薔薇の人
登場人物を、A,B,C,D,Eに変更します。
Aの隣はDかE、
DとEは隣はダメ

DAEとB,Cの順列が3!=6通り
EADとB,Cの順列が3!=6通り

Aが左端に着て、隣がDの場合が4通り
Aが左端に着て、隣がEの場合が4通り

Aが右端に着て、隣がDの場合が4通り
Aが右端に着て、隣がEの場合が4通り

合計して28通り
   6月29日(木) 0:09:59     52561
Mr.ダンディ
ベルク・カッツエ様の #52560と同様にしました。
茨木市   6月29日(木) 0:19:21     52562
今年から高齢者
ベルク・カッツエさん#52560と類似でした
トモエさんが端の場合に2×2×2×1を6として24を送っていました。
この間違いに気づくまでに時間を浪費しました
   6月29日(木) 0:31:16     52563
みかん
A・B・C・D・Eの5人で考える。

(1)AがBとCの間にない場合
A・B・C がこの順で並ぶ場合
AとBの間にDかEを入れ、残りの1人はAの左、BとCの間、Cの右のいずれかに入れる。
したがって、2×3=6通り。

A・C・B、B・C・A、B・A・Cの場合も同様なので、6×4=24通り。

(2)AがBとCの間にある場合
B・A・C がこの順で並ぶ場合
BとAの間にDかEを入れ、残りの1人をAとCの間に入れる。
したがって2×1=2通り。

C・A・Bの場合も同様なので、2×2=4通り。

求めるのは(1)と(2)の和なので、24+4=28通り。

全体からダメな例を引いていくのがラクかと思いきや、意外とうまくいかずに苦戦しました。
解法を見てしまえば大した問題には思えないんだけど、一発で合わせるのはなかなか緊張します。
   6月29日(木) 0:46:14     52564
「数学」小旅行
まずは男の子を3人並べておいて、女の子を間に入れて行きました。
   6月29日(木) 2:28:12     52565
手描き図面職人
ChatGPTで問題を解いて貰いました。
   6月29日(木) 5:49:32     52566
「数学」小旅行
#52565
「マサルさん」は水色だったので男の子としましたが、違っていたらごめんなさい。
   6月29日(木) 7:24:36     52567
ベルク・カッツェ
#52567
私も「子供たち」と書きましたが、どこにも子供とは書いてありませんでした。
   6月29日(木) 9:27:45     52568
手描き図面職人
import itertools

def count_arrangements():
people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
arrangements = list(itertools.permutations(people))
count = 0

for arrangement in arrangements:
if is_valid(arrangement):
count += 1

return count

def is_valid(arrangement):
for i in range(len(arrangement)):
if arrangement[i] == 'トモエ':
if i > 0 and (arrangement[i-1] == 'マサル' or arrangement[i-1] == 'マサヒコ'):
return False
if i < len(arrangement)-1 and (arrangement[i+1] == 'マサル' or arrangement[i+1] == 'マサヒコ'):
return False
elif arrangement[i] == 'マリコ':
if i > 0 and arrangement[i-1] == 'ツヨシ':
return False
if i < len(arrangement)-1 and arrangement[i+1] == 'ツヨシ':
return False

return True

count = count_arrangements()
print(f"並び方の総数: {count}")
ChatGPTにパイソンプログラムを作成してもらいました。こんな奇麗な、プログラムは、私には組めません。
   6月29日(木) 10:49:29     52569
「数学」小旅行
ChatGPTが思うように操れません。
今回の問題をそのままコピペでSend a messageに入れると、

> まず、トモエさんはマサルさんの隣もマサヒコくんの隣も拒否するため、彼女の並び方は以下のようになります。
>
>トモエ _ _
>
>マサルさんとマサヒコくんの並び方は、トモエさんの隣になることができないため、彼らをそれぞれ別々のスロットに配置する必要があります。また、マサルさんとマサヒコくんの間には他の人が入る可能性があります。
>
>トモエ マサル マサヒコ

などとなって、最終は

> 5 × 4 × 3 × 2 × 1 = 120
>
>したがって、5人の並び方の場合の数は120通りです。

てなことに。どんなふうにプロンプトエンジニアリングしたら応えてくれるようになるのか?
   6月29日(木) 12:51:22     52570
ベルク・カッツェ
拒否に関係なく並べるのであれば120通りになりますね。
この条件に合う並べ方のみを数える、と具体的に表現しないとだめなのでしょうか。
素人なので、見当違いだったらすみません。
   6月29日(木) 13:30:10     52571
手描き図面職人
ChatGPTの質問欄に問題をコピーアンドペーストしてshift+enterでpython codeを作成して下さい。と追加して、送信すると、python codeを作成してくれます。
   6月29日(木) 14:57:46     52572
ベルク・カッツェ
そんな簡単に・・・時代についていけない。
   6月29日(木) 15:19:47     52573
手描き図面職人
atcoder problemsの問題をchatGPTにpython codeを作成して貰っています。
   6月29日(木) 16:09:19     52574
「数学」小旅行
私もやってみました。以下のようなプログラムを作っていただきました。
すごいですねぇ。

from itertools import permutations

people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
forbidden_pairs = [('トモエ', 'マサル'), ('トモエ', 'マサヒコ'), ('マリコ', 'ツヨシ')]

count = 0
for perm in permutations(people):
valid = True
for pair in forbidden_pairs:
if pair[0] in perm and pair[1] in perm:
idx1 = perm.index(pair[0])
idx2 = perm.index(pair[1])
if abs(idx1 - idx2) == 1:
valid = False
break
if valid:
count += 1

print("条件を満たす5人の並び方の場合の数:", count)

   6月29日(木) 17:29:59     52575
ゴンとも
十進Basic で
トモエ  1
マサル 2
マサヒコ 3
マリコ 4
ツヨシ 5
場所をabcdeとして

FOR a=1 to 5
FOR b=1 to 5
if b=a then goto 40
if a=1 and (b=2 or b=3) then goto 40
if b=1 and (a=2 or a=3) then goto 40
if a=4 and b=5 then goto 40
if b=4 and a=5 then goto 40
FOR c=1 to 5
if c=a or c=b then goto 30
if b=1 and (c=2 or c=3) then goto 30
if c=1 and (b=2 or b=3) then goto 30
if b=4 and c=5 then goto 30
if c=4 and b=5 then goto 30
FOR d=1 to 5
if d=a or d=b or d=c then goto 20
if c=1 and (d=2 or d=3) then goto 20
if d=1 and (c=2 or c=3) then goto 20
if c=4 and d=5 then goto 20
if d=4 and c=5 then goto 20
FOR e=1 to 5
if e=a or e=b or e=c or e=d then goto 10
if d=1 and (e=2 or e=3) then goto 10
if e=1 and (d=2 or d=3) then goto 10
if d=4 and e=5 then goto 10
if e=4 and d=5 then goto 10
let s=s+1
10 next e
20 next d
30 next c
40 next b
50 next a
print s
end

f9押して 28・・・・・・(答え)

この問題のプログラムは簡単で5分ぐらいで・・・
豊川市   6月29日(木) 21:00:00   MAIL:fttnm528@ybb.ne.jp   52576
手描き図面職人
他のプログラム言語も多分、ネットにデータが在るので、対応可能だと思います。
   6月30日(金) 5:21:16     52577
手描き図面職人
from itertools import permutations

def count_arrangements():
people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
arrangements = list(permutations(people))
count = 0

for arrangement in arrangements:
if (arrangement.index('マサル') == arrangement.index('トモエ') + 1 or
arrangement.index('マサル') == arrangement.index('トモエ') - 1):
continue
if (arrangement.index('マサヒコ') == arrangement.index('トモエ') + 1 or
arrangement.index('マサヒコ') == arrangement.index('トモエ') - 1):
continue
if arrangement.index('ツヨシ') == arrangement.index('マリコ') + 1 or arrangement.index('ツヨシ') == arrangement.index('マリコ') - 1:
continue

count += 1

return count

print(count_arrangements())
ChatGPTに再度Pythonプログラムを作成して貰いました。コピーアンドペーストしたのですがインデントされていますね。
   6月30日(金) 6:21:28     52578
手描き図面職人
提出欄でインデントされていても、出力すると、インデントされていませんね。
   6月30日(金) 6:24:23     52579
「数学」小旅行
#52575
 from itertools import permutations

 people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
 forbidden_pairs = [('トモエ', 'マサル'), ('トモエ', 'マサヒコ'), ('マリコ', 'ツヨシ')]

 count = 0
 for perm in permutations(people):
  valid = True
  for pair in forbidden_pairs:
  if pair[0] in perm and pair[1] in perm:
  idx1 = perm.index(pair[0])
  idx2 = perm.index(pair[1])
  if abs(idx1 - idx2) == 1:
  valid = False
  break
  if valid:
  count += 1

 print("条件を満たす5人の並び方の場合の数:", count)

インデントを入れてみました。答28.ばっちりです。
なお、本問の設定では if pair[0] in perm and pair[1] in perm:はなくてもいいと思います。

   6月30日(金) 7:00:19     52580
「数学」小旅行
インデントが消されるので再投稿です。

'from itertools import permutations

'people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
'forbidden_pairs = [('トモエ', 'マサル'), ('トモエ', 'マサヒコ'), ('マリコ', 'ツヨシ')]

'count = 0
'for perm in permutations(people):
' valid = True
' for pair in forbidden_pairs:
' idx1 = perm.index(pair[0])
' idx2 = perm.index(pair[1])
' if abs(idx1 - idx2) == 1:
' valid = False
' break
' if valid:
' count += 1

'print("条件を満たす5人の並び方の場合の数:", count)

行頭に ' を付けてみました。
   6月30日(金) 7:05:02     52581
「数学」小旅行
すみません。だめでした。2個連続の半角スペースが1個になってしまいます。
   6月30日(金) 7:07:03     52582
「数学」小旅行
しつこいですが、インデントの半角スペースの数だけ、全角スペースを入れて投稿です。
パイソンはendが無いので。。。

from itertools import permutations

people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
forbidden_pairs = [('トモエ', 'マサル'), ('トモエ', 'マサヒコ'), ('マリコ', 'ツヨシ')]

count = 0
for perm in permutations(people):
  valid = True
  for pair in forbidden_pairs:
   idx1 = perm.index(pair[0])
   idx2 = perm.index(pair[1])
   if abs(idx1 - idx2) == 1:
    valid = False
    break
  if valid:
   count += 1

print("条件を満たす5人の並び方の場合の数:", count)
   6月30日(金) 7:16:12     52583
手描き図面職人
from itertools import permutations

def count_arrangements():
  people = ['トモエ', 'マサル', 'マサヒコ', 'マリコ', 'ツヨシ']
  arrangements = list(permutations(people))
  count = 0

  for arrangement in arrangements:
    if (arrangement.index('マサル') == arrangement.index('トモエ') + 1 or
    arrangement.index('マサル') == arrangement.index('トモエ') - 1):
      continue
      if (arrangement.index('マサヒコ') == arrangement.index('トモエ') + 1 or
      arrangement.index('マサヒコ') == arrangement.index('トモエ') - 1):
        continue
        if arrangement.index('ツヨシ') == arrangement.index('マリコ') + 1 or arrangement.index('ツヨシ') ==               

          arrangement.index('マリコ') - 1:
            continue

            count += 1

            return count

            print(count_arrangements())インデントの練習をしてみました。
   6月30日(金) 9:51:22     52584
手描き図面職人
ChatGPTは入力するたびに違うプログラムを作成してくれます。凄いですね。
   6月30日(金) 10:54:52     52585
手描き図面職人
ChatGPTはBasic言語でプログラムを作成することはできません。
   6月30日(金) 12:18:58     52586
かずき0202
トモエが端にいるか端にいないかで考えたら28通りになった
   6月30日(金) 18:57:50     52587
まるケン
p "ABCDE".chars.permutation(5).map{|i|i.join}.count{|s|s !~/AB|BA|AC|CA|DE|ED/}
   7月1日(土) 16:04:19   MAIL:take4310@mobile.email.ne.jp   52588
手描き図面職人
atcoderproblemsの問題をChatGPTに解いて貰って、提出してみましたが、不正解の場合も有ります。コンピューターが解いて判定しているのに何故でしょう。
   7月1日(土) 16:07:08     52589
手描き図面職人
atcderproblemsの問題を、ChatGPTとgoogle bardに解いて貰って、提出して正解数の割合を調べて見ようと思っています。
   7月1日(土) 18:47:17     52590
手描き図面職人
atcodeproblemsのABC001-AからABC005-Dまでの20問を解いた結果は、ChatGPTは9問正解、google bardは7問正解でした。
   7月5日(水) 5:19:59     52591