通りすがり |
算チャレではよくあるタイプの問題ですね |
7月31日(木) 0:09:46
42126 |
みかん |
差として出るのは「99×(A−C)」。
AもCも0〜9の整数なので、A−Cとして考えられるのは0〜9の整数。 従って、99×(1+2+3+…+8+9)=99×45=4455 |
7月31日(木) 0:12:02
42127 |
しらす |
どうしても一位がとれないなぁ |
7月31日(木) 0:12:25
42128 |
今年から高齢者 |
99*(9+8+7+6+5+4+3+2+1)で良かったものを、何を勘違いしたのか
99*(8+7+6+5+4+3+2+1)+99*(7+6+5+4+3+2+1)+・・・+99*(2+1)+99*1まで加えてしまいました。 入れないので計算間違いを一所懸命探して時間を浪費。残念! |
7月31日(木) 0:17:42
42129 |
ベルク・カッツェ |
一位は難しいですねえ。
問題読んで、紙に書いて考えて、計算して、フォーム開いて入力して送信。 仮に一瞬で解き方分かったとしても、私のスピードでは絶対無理な気が・・・。 AとCの差が1のとき、100-1=99 差が2なら99×2、3なら99×3、・・・9なら99×9 1から9までの和は45 99×45=4500-45なので答えは4455 |
7月31日(木) 0:27:01
42130 |
あめい |
今回はスッとできました。みなさん同じだと思いますがみかんさんと全く同じです。大小問わずに引いて0(でいいんですよね?)を求めさせるのも斬新でいいのではなどと思いました。
|
お馬崎
7月31日(木) 0:28:22
42131 |
Jママ |
一般化してみました
N桁の場合 Nが偶数のとき……5{10^(N/2)-1}^2 Nが奇数のとき……5[10^{(N+1)/2}-1][10^{(N-1)/2}-1] でしょうか…? 追記)ここで言う差とは、N桁の数字を逆から並べたものとの差のことです N=5なら、「ABCDE」-「EDCBA」について計算しています |
7月31日(木) 1:31:52
42132 |
物理好き |
ABCーCBAのCーAはくり下がるので10の位は9。
100の位はAーCー1(くり下がり)、1の位は10+CーAになるので100の位と1の位の和はAーCー1+10+CーA=9なので、ABCは99,198,297,396,495,594,693,792,891なので、これらの和は4455。 |
7月31日(木) 0:42:03
42133 |
小西孝一 |
(a+b)*100+a-a*100-a-b=b*100-b
bが1から9までで 100+200+...+900-(1+2+...+9)=4500-45=4455 でした。 |
7月31日(木) 0:43:39
42134 |
Mr.ダンディ |
#42129の今年から高齢者さんと同じく、すべてのABCのときの差の和と考え、32,670で送信
間違った思い込みに気付くのに時間がかかり、頭の硬化を再認識! (結局、皆さんと同じ計算式で 4455に) |
7月31日(木) 1:13:26
42135 |
スモークマン |
そっかぁ…^^;
わたしも… abc-cba=a(100-1)-c(100-1)=99*(a-c) a=9...a-c=9~1 a=8…a-c=8~1 … a=1…a-c=1 99*(1*9+2*8+3*7+4*6+5*5+6*4+7*3+8*2+9*1)=16335 だと思いこんでましたぁ…しかも…x10で送ってたりで...Orz... |
金即是空 ^^;v
7月31日(木) 1:36:49
42136 |
ましゃ |
考えられるABC−CBAの合計を考えて、163350を送信。
差として考えられる数字の合計だったんですね。 |
7月31日(木) 10:10:27
42137 |
uchinyan |
はい,こんにちは。さて,今回の問題は...
これは簡単でしたね。こんな感じで。 ABC と CBA の差 = |ABC - CBA| = |(A * 100 + B * 10 + C) - (C * 100 + B * 10 + A)| = |(A - C) * 100 + (C - A)| = |(A - C) * 100 - (A - C) * 1| = |(A - C) * (100 - 1)| = |(A - C) * 99| = |A - C| * 99 ここで,A,B,C は 0 〜 9 の整数なので,|A - C| も 0 〜 9 の整数です。 そこで,それらの和は, (0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9) * 99 = 45 * 99 = 4455 になります。 |
ネコの住む家
7月31日(木) 11:20:25
MAIL:uchi@sco.bekkoame.ne.jp 42138 |
uchinyan |
掲示板を読みました。
今回は,問題文の解釈に若干の誤解があったようですが,結局のところ,解法は同じだと思います。 なお, #42132 >N桁の場合 >Nが偶数のとき……5{10^(N/2)-1}^2 >Nが奇数のとき……5[10^{(N+1)/2}-1][10^{(N-1)/2}-1] 正しそうですね。 |
ネコの住む家
7月31日(木) 11:43:07
MAIL:uchi@sco.bekkoame.ne.jp 42139 |
Mr.ダンディ |
ましゃさん#42137、スモークマンさん#42136
我等同じミスをしたのですが、ABC と CBA の差の総和だとすると、A>CのときとA<Cのときとがあるので 16335*2=32670 (通り)となりませんか? |
7月31日(木) 12:27:15
42140 |
ましゃ |
Mr.ダンディさん
A=9→1まで全ての場合を考えると16335の10倍になりませんか? |
7月31日(木) 13:20:12
42141 |
Jママ |
#42139
uchinyanさん、検証くださりありがとうございますm(__)m 皆さま、しばらく厳しい暑さが続くかとおもわれますが、どうかご自愛されますように。 |
7月31日(木) 13:40:47
42142 |
Mr.ダンディ |
ましゃさん
#42136のスモークさんの式を借りると abc-cba=a(100-1)-c(100-1)=99*(a-c) a=9...a-c=9~1 a=8…a-c=8~1 … a=1…a-c=1 99*(1*9+2*8+3*7+4*6+5*5+6*4+7*3+8*2+9*1)=16335 この値は a>cの場合だけの和で、a<cの場合も同数だけあると考え 16335*2 と考えたのですが・・・・・ よく考えると それぞれの(A,C)の組に関して、Bが0〜9までの10通りずつ考えられるから すべてのABCの場合の差の総和となると 16335*2*10=32670 が答えとなるのでしょうか? (みなさん、間違いのなかの間違い探しのような書き込みですみません。) |
7月31日(木) 16:11:50
42143 |
uchinyan |
#42143 Mr.ダンディさん他
問題文をどう変更したいのかよく分からないので何とも言えませんが, n = ABC = 000 〜 999 のすべてに対して m = CBA を考え |n - m| の総和を求めるのならば, 326700 でしょう。 |
ネコの住む家
7月31日(木) 16:46:04
MAIL:uchi@sco.bekkoame.ne.jp 42144 |
まるケン |
試しに4桁を計算してみました。
単純に、0から9999の数字iに対して逆の数字jをつくり、 i>=jの時、i−jを計算、連想配列でその数値を保存。 連想配列に残った数字の合計を表示してみました。 結果、858195という数値となり、Jママさんの式での結果と異なります。 いろいろ調べた結果、Jママさんの式では、 (A−D)×999+(B−C)×90 のケースしか考慮されておらず、 (A−D)×999−(B−C)×90、ただし、(A−D)×999>(B−C)×90 のケースが漏れているせいと思われます。 桁数が増えると、この場合分けはもっと複雑になり、ちょっと一般化は難しそうな気がしました。 っていうか、私には到底無理そうです。 ちなみに、8ケタまでの計算結果をさらします。 405 4455 858195 8593695 1633065705 16330920705 3102880348395 |
ないしょ
7月31日(木) 17:30:00
MAIL:take4310@mobile.email.ne.jp HomePage:まるケンの部屋 42145 |
まるケン |
ちょっと改良して、15ケタまで
405 4455 858195 8593695 1633065705 16330920705 3102880348395 31028808898395 5895473797619505 58954738083119505 11201400237864770595 112014002380719770595 21282660452376530641305 212826604523805080641305 |
ないしょ
7月31日(木) 18:07:40
MAIL:take4310@mobile.email.ne.jp HomePage:まるケンの部屋 42146 |
Mr.ダンディ |
#42144 uchinyanさん有り難うございます。(まずは一安心!)
> 「16335*2*10=32670 が答えとなるのでしょうか?」は 「16335*2*10=326700 が答えとなるのでしょうか?」でした。 (何をうろたえているのでしょうかね。(笑)) |
7月31日(木) 19:23:59
42147 |
まるケン |
到底無理かどうかは、やってみなくちゃわからない、、、
Σ ((10^(n-(i*2-1))-1) * 10^(i-1)) * 45 * 19^(floor(n/2)-i), i = 1, floor(n/2) |
ないしょ
7月31日(木) 19:24:57
MAIL:take4310@mobile.email.ne.jp HomePage:まるケンの部屋 42148 |
まるケン |
rubyのプログラムで確認しました。
プログラムから数学っぽく書き直した時に間違いがもぐりこんでいる可能性もあるので、 確認したプログラムも貼り付けます。 ちなみに、段下げに全角スペースを使っているので、コピペして実行する場合はスペースなりタブなりに置き換えてください。 #!/usr/bin/ruby def solv(n) total = 0 (1..(n/2).to_i).each do |i| total += ((10**(n-(i*2-1))-1) * 10**(i-1)) * 45 * 19**((n/2).to_i-i) end return total end (2..15).each do |n| p solv(n) end |
ないしょ
7月31日(木) 19:28:52
HomePage:まるケンの部屋 42149 |
uchinyan |
#42145
まるケンさん そうか。おっしゃるとおりのようですね; うっかりしました。 Jママさん チェックがいい加減でした。 申し訳ない。 |
ネコの住む家
7月31日(木) 20:19:06
MAIL:uchi@sco.bekkoame.ne.jp 42150 |
Jママ |
#42145
まるケンさん、 おっしゃる通りですね… 見立てが甘すぎて穴だらけでした、お恥ずかしいかぎり…(>_<) #42150 とんでもないです。 今後ともご指導よろしくです♪ |
7月31日(木) 22:14:49
42151 |
算学部 |
|ABC-CBA|=|(A0C+0B0)-(C0A+0B0)|=|A0C-C0A|
=|100*(A-C)+(C-A)|=|99*A-99*C|=99*|A-C| |A-C|と考えられるのは0,1,2,...,8,9 99*(1+2+...+9)=4455 3桁数字のままの計算で通そうと思ったけど無理でした。 |
7月31日(木) 22:48:30
42152 |
スモークマン |
#42143 Mr.ダンディさんへ ^^
わたしは、ましゃさんのように考えましたです ^^;… よく分からなくなってしまいました…Orz... |
金即是空 ^^;v
7月31日(木) 22:56:00
42153 |
Jママ |
#42148
N=2……45×9 N=3……45×99 N=4……45×(999×19+90) N=5……45×(9999×19+990) N=6……45×(99999×19×19+9990×19+900) N=7……45×(999999×19×19+99990×19+9900) N=8……45×(9999999×19×19×19+999990×19×19+99900×19+9000) … … だとしたら Nが偶数のとき … 45×Σ{k=1toN/2}[{10^(N-k)-10^(k-1)}19^(N/2-k)] Nが奇数のとき … 45×Σ{k=1to(N-1)/2}[{10^(N-k)-10^(k-1)}19^{(N-1)/2-k}] でしょうか…? フォロー感謝します プログラムはまったく読めませんが、いただいた結果を見ながら考えましたm(__)m |
7月31日(木) 23:54:36
42154 |
おすまん |
やっと入れました…
100A+10B+C で考え始めて、 326700,16335 あたりを認証ではじかれたあと、 問題文を読み直して、 (0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9) * 99 = 45 * 99 = 4455 にやっと気づきました… orz |
somewhere in the world
8月1日(金) 2:47:01
42155 |
数樂 |
001,002,003,004,005,006,007,008,009だけ調べて解きました。 |
徳島県
8月1日(金) 3:11:53
HomePage:数樂 42156 |
まるケン |
ワンライナー
ruby -e 'n=3;p (1..(n/2)).map{|i|((10**(n-(i*2-1))-1)*10**(i-1))*45*19**((n/2)-i)}.inject(:+)' |
ないしょ
8月1日(金) 10:50:40
MAIL:take4310@mobile.email.ne.jp HomePage:まるケンの部屋 42157 |
uchinyan |
#42154,#42148
Jママさん #42154の結果は,ガウス着号 [ ],[x] は x を超えない最大の整数,を使うと,まとめて, 45×Σ{k=1to[N/2]}[{10^(N-k)-10^(k-1)}19^([N/2]-k)] と書けます。そしてこれは, Σ{k=1to[N/2]}[{10^(N-(2k-1))ー1}×10^(k-1)×45×19^([N/2]-k)] と変形できます。 一方で,まるケンさんの#42148の Σ ((10^(n-(i*2-1))-1) * 10^(i-1)) * 45 * 19^(floor(n/2)-i), i = 1, floor(n/2) は,floor が床関数と呼ばれるものでプログラム言語の組み込み関数としてよく使われますが, floor(n/2) = [n/2] と思っていいので,Jママさんの結果と同じ式です。 まるケンさんはプログラムで確認されているようですし, あまりあてにならないですが (^^;,私が確認した範囲でも,同じになったので, 今度は正しいと思います。 |
ネコの住む家
8月1日(金) 14:23:55
MAIL:uchi@sco.bekkoame.ne.jp 42158 |
Jママ |
#42158
uchinyan さん ありがとうございます(*^^*) なるほど、変形したあとの式の方が計算しやすいですね。 ガウス記号は、あまり使いなれていないのですが かねてより少し疑問点があるのでここで質問します [0.5]=0、[-0.5]=-1、[-1.5]=-2 で合ってますか?(^-^; 負の数になっても越えない整数でいいのでしょうか…(^-^; まるケンさんのお陰様で一般化を確からしくすることが できました。 いろいろとありがとうございました(*^^*) |
8月1日(金) 15:25:27
42159 |
uchinyan |
#42159
>[0.5]=0、[-0.5]=-1、[-1.5]=-2 >で合ってますか?(^-^; 負の数になっても越えない整数でいいのでしょうか…(^-^; はい,正しいです。 |
ネコの住む家
8月1日(金) 16:09:15
MAIL:uchi@sco.bekkoame.ne.jp 42160 |
Jママ |
#42160
ありがとうございました(*^^*) スッキリしました♪ |
8月1日(金) 16:16:52
42161 |
Mr.ダンディ |
スモークマンさんへ
uchinyanさんが端的に「n = ABC = 000 〜 999 のすべてに対して m = CBA を考え |n - m| の総和」と書いていただいたのですが そうすると、例えば A>Cとは限らないので [ABC]=743のとき 入れ替えたものとの差は 99*|7-3|=396 [ABC]=347のとき 入れ替えたものとの差も 99*|3-7|=396 わたしは これらの2つとも加えていくと考えました。→2倍 |
8月2日(土) 8:31:31
42162 |
??? |
VBSCRIPT
dim p(999) for j=0 to 999:p(j)=0:next for A=0 to 9:for B=0 to 9:for C=0 to 9 p(abs((100*A+10*B+C)-(100*C+10*B+A)))=1 next:next:next wa=0:for j=0 to 999:wa=wa+j*p(j):next msgbox wa |
8月2日(土) 8:41:14
42163 |