ベルク・カッツェ |
トモエさんが端
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 |