プログラミングのお題スレです。
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
結果がある場合はそれも
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
※前スレ
プログラミングのお題スレ Part14
http://mevius.5ch.net/test/read.cgi/tech/1558168409/
探検
プログラミングのお題スレ Part15
■ このスレッドは過去ログ倉庫に格納されています
2019/07/28(日) 19:39:57.54ID:832c/ukY
246デフォルトの名無しさん
2019/08/31(土) 10:03:16.75ID:4OmVCRqb time perl -e 'for (1..100_000_000) { print if s{\A (.) \1* \z}{$& }x }'
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777 888 999
1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333 44444 55555 66666
77777 88888 99999 111111 222222 333333 444444 555555 666666 777777 888888 999999
1111111 2222222 3333333 4444444 5555555 6666666 7777777 8888888 9999999 11111111
22222222 33333333 44444444 55555555 66666666 77777777 88888888 99999999
real 1m30.031s
user 1m29.046s
sys 0m0.093s
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777 888 999
1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333 44444 55555 66666
77777 88888 99999 111111 222222 333333 444444 555555 666666 777777 888888 999999
1111111 2222222 3333333 4444444 5555555 6666666 7777777 8888888 9999999 11111111
22222222 33333333 44444444 55555555 66666666 77777777 88888888 99999999
real 1m30.031s
user 1m29.046s
sys 0m0.093s
247デフォルトの名無しさん
2019/08/31(土) 10:56:28.19ID:Z8IDlpBx >>245 Pharo/Squeak Smalltalk
| time ans |
time := [ans := (1 to: 100000000) select: [:n | n asString asSet size = 1]] timeToRun.
^{time. ans}
"Core m3-8100Y => an Array(0:00:02:55.58 #(1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111
222 333 444 555 666 777 888 999 1111 2222 3333 4444 5555 6666 7777 8888 9999 11111
22222 33333 44444 55555 66666 77777 88888 99999 111111 222222 333333 444444 555555
666666 777777 888888 999999 1111111 2222222 3333333 4444444 5555555 6666666 7777777
8888888 9999999 11111111 22222222 33333333 44444444 55555555 66666666 77777777
88888888 99999999)) "
| time ans |
time := [ans := (1 to: 100000000) select: [:n | n asString asSet size = 1]] timeToRun.
^{time. ans}
"Core m3-8100Y => an Array(0:00:02:55.58 #(1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111
222 333 444 555 666 777 888 999 1111 2222 3333 4444 5555 6666 7777 8888 9999 11111
22222 33333 44444 55555 66666 77777 88888 99999 111111 222222 333333 444444 555555
666666 777777 888888 999999 1111111 2222222 3333333 4444444 5555555 6666666 7777777
8888888 9999999 11111111 22222222 33333333 44444444 55555555 66666666 77777777
88888888 99999999)) "
248デフォルトの名無しさん
2019/08/31(土) 10:58:35.47ID:8/I1hpDH >>245 Perl5、1千万以下、CPU: Core i5 M520@2.4GHz
use Time::HiRes qw(gettimeofday tv_interval);
$t0 = [gettimeofday];
for (1..1e8) {
push @s, $_ if /^(.)\1*$/;
}
$elapse = tv_interval($t0, [gettimeofday]);
printf "@s\n%.3f[s]\n", $elapse;
実行結果
~ $ perl 15_245.pl
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777 888 999
1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333 44444 55555 66666
77777 88888 99999 111111 222222 333333 444444 555555 666666 777777 888888 999999
1111111 2222222 3333333 4444444 5555555 6666666 7777777 8888888 9999999
49.732[s]
use Time::HiRes qw(gettimeofday tv_interval);
$t0 = [gettimeofday];
for (1..1e8) {
push @s, $_ if /^(.)\1*$/;
}
$elapse = tv_interval($t0, [gettimeofday]);
printf "@s\n%.3f[s]\n", $elapse;
実行結果
~ $ perl 15_245.pl
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777 888 999
1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333 44444 55555 66666
77777 88888 99999 111111 222222 333333 444444 555555 666666 777777 888888 999999
1111111 2222222 3333333 4444444 5555555 6666666 7777777 8888888 9999999
49.732[s]
249デフォルトの名無しさん
2019/08/31(土) 11:35:18.32ID:weQXwxl4 >>245 Java
https://ideone.com/0ddTLO
Pentium G6950@2.8GHz
整数演算: 1,073ms
正規表現: 46,450ms
Ideone
整数演算: 495ms
正規表現: 2,592ms (これだけ1千万以下で計測)
https://ideone.com/0ddTLO
Pentium G6950@2.8GHz
整数演算: 1,073ms
正規表現: 46,450ms
Ideone
整数演算: 495ms
正規表現: 2,592ms (これだけ1千万以下で計測)
250デフォルトの名無しさん
2019/08/31(土) 12:36:03.19ID:E0AleLqQ >>120
Haskell
main = map (\n -> f n 0) [15,93,77,123]
f n a | n < 10 = (n,a)
f n a = f (product [read [x] | x <- show n]) (a + 1)
Haskell
main = map (\n -> f n 0) [15,93,77,123]
f n a | n < 10 = (n,a)
f n a = f (product [read [x] | x <- show n]) (a + 1)
251デフォルトの名無しさん
2019/08/31(土) 12:47:22.94ID:8/I1hpDH >>245 c99、 Core i5 M520@2.4GHz
#include <time.h>
#include <math.h>
#include <stdio.h>
int main() {
int b = 1, n = 1;
clock_t s = clock();
for (int e = 1; e <= 9; e++) {
int j = pow(10, e) - pow(10, e - 1);
for (int i = 1; i <= j; i++) {
if (n == (n / b) * b)
printf("%d ", n);
n++;
}
b *= 10; b += 1;
}
clock_t e = clock();
printf("\n%.3f[s]\n", (double)(e - s)/1e6);
}
実行結果
$ cc -std=c99 -O2 15_245.c -lm
$ time ./a.out
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777
888 999 1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333
44444 55555 66666 77777 88888 99999 111111 222222 333333 444444 555555
666666 777777 888888 999999 1111111 2222222 3333333 4444444 5555555
6666666 7777777 8888888 9999999 11111111 22222222 33333333 44444444
55555555 66666666 77777777 88888888 99999999 111111111 222222222
333333333 444444444 555555555 666666666 777777777 888888888 999999999
3.890[s]
#include <time.h>
#include <math.h>
#include <stdio.h>
int main() {
int b = 1, n = 1;
clock_t s = clock();
for (int e = 1; e <= 9; e++) {
int j = pow(10, e) - pow(10, e - 1);
for (int i = 1; i <= j; i++) {
if (n == (n / b) * b)
printf("%d ", n);
n++;
}
b *= 10; b += 1;
}
clock_t e = clock();
printf("\n%.3f[s]\n", (double)(e - s)/1e6);
}
実行結果
$ cc -std=c99 -O2 15_245.c -lm
$ time ./a.out
1 2 3 4 5 6 7 8 9 11 22 33 44 55 66 77 88 99 111 222 333 444 555 666 777
888 999 1111 2222 3333 4444 5555 6666 7777 8888 9999 11111 22222 33333
44444 55555 66666 77777 88888 99999 111111 222222 333333 444444 555555
666666 777777 888888 999999 1111111 2222222 3333333 4444444 5555555
6666666 7777777 8888888 9999999 11111111 22222222 33333333 44444444
55555555 66666666 77777777 88888888 99999999 111111111 222222222
333333333 444444444 555555555 666666666 777777777 888888888 999999999
3.890[s]
252デフォルトの名無しさん
2019/08/31(土) 13:39:39.88ID:u8Io5isX253デフォルトの名無しさん
2019/08/31(土) 13:43:00.43ID:weQXwxl4254デフォルトの名無しさん
2019/08/31(土) 13:44:48.13ID:u8Io5isX ぶー!!!
・・・これが・・・!!!・・・これこそが・・・!!!
・・・だ・・・!!!・・・だそく・・・!!!!
・・・これが・・・!!!・・・これこそが・・・!!!
・・・だ・・・!!!・・・だそく・・・!!!!
255デフォルトの名無しさん
2019/08/31(土) 13:45:31.08ID:u8Io5isX 間に合った。 >>253 サンキュー。
256デフォルトの名無しさん
2019/08/31(土) 15:12:57.30ID:RMcMP/J8 >>245
Haskell ナイーブな方
Atomコア(Celeron N3050@1.6GHz)
1億以下で約31秒
main = print [x | x <- [1..100000000], let (s:ss) = show x, all (== s) ss]
time ./zorome
real 0m31.426s
user 0m31.123s
sys 0m0.248s
ナイーブな方は探すアルゴリズムで、最適化の方(>>244)は数列を作るアルゴリズム。
(1から99999999までの(1桁から8桁までの)ゾロ目を作る)
[
[[1],[1,10],[1,10,100]...],
[[2],[2,20],[2,20,200]...],
...,
[[9],[9,90],[9,90,900]...]]
]
って言う数列を生成して、合計出してフラットにしてソートしてるだけだよ。
(他の言語のも多少の手順の違い(フラット化とソートしないで「合計出した時点で表示」を縦方向に繰り返したり)はあるけど、基本のアルゴリズムとしては同じ)
Haskell ナイーブな方
Atomコア(Celeron N3050@1.6GHz)
1億以下で約31秒
main = print [x | x <- [1..100000000], let (s:ss) = show x, all (== s) ss]
time ./zorome
real 0m31.426s
user 0m31.123s
sys 0m0.248s
ナイーブな方は探すアルゴリズムで、最適化の方(>>244)は数列を作るアルゴリズム。
(1から99999999までの(1桁から8桁までの)ゾロ目を作る)
[
[[1],[1,10],[1,10,100]...],
[[2],[2,20],[2,20,200]...],
...,
[[9],[9,90],[9,90,900]...]]
]
って言う数列を生成して、合計出してフラットにしてソートしてるだけだよ。
(他の言語のも多少の手順の違い(フラット化とソートしないで「合計出した時点で表示」を縦方向に繰り返したり)はあるけど、基本のアルゴリズムとしては同じ)
257デフォルトの名無しさん
2019/09/01(日) 18:40:58.06ID:lGQcNl0x お題: nバイトのデータxをビット列にして出力しなさい
258デフォルトの名無しさん
2019/09/01(日) 19:01:25.42ID:KcbCTlPY259デフォルトの名無しさん
2019/09/01(日) 19:32:51.46ID:VqTK6sxa >>257 Perl5
$n = 24;
@a = map{int rand 255} 1..$n;;
print "@a\n";
@b = map{sprintf'%08b', $_} @a;
$" = '';
print "@b\n
実行例
~ $ perl 15_257.pl
155 105 94 58 85 82 124 6 242 94 119 175 69 205 95 25 79 154 237 248 169 254 46 93
100110110110100101011110001110100101010101010010011111000000011011110010010111100111011110101111010001011100110101011111000110010100111110011010111011011111100010101001111111100010111001011101
$n = 24;
@a = map{int rand 255} 1..$n;;
print "@a\n";
@b = map{sprintf'%08b', $_} @a;
$" = '';
print "@b\n
実行例
~ $ perl 15_257.pl
155 105 94 58 85 82 124 6 242 94 119 175 69 205 95 25 79 154 237 248 169 254 46 93
100110110110100101011110001110100101010101010010011111000000011011110010010111100111011110101111010001011100110101011111000110010100111110011010111011011111100010101001111111100010111001011101
260デフォルトの名無しさん
2019/09/01(日) 19:42:33.97ID:931SdLmv261デフォルトの名無しさん
2019/09/01(日) 20:53:53.13ID:kwhZ+eUh >>259
rand 255 ⇒ 256 の方がヨカタ
rand 255 ⇒ 256 の方がヨカタ
262デフォルトの名無しさん
2019/09/01(日) 21:45:06.97ID:CELgatxy263デフォルトの名無しさん
2019/09/02(月) 02:56:48.97ID:oioFkvSQ >>120
>>125 みたいに、1桁になるまでの変化の様子もリストで渡すようにした。
Haskell
main = mapM put [4,15,93,77,123,277777788888899]
put x = (putStrLn.concat) [show x," -> ",show a,
" loop and value is ",show n,". list = ",show l]
where (l,a,n) = f [] 0 x
f l a n| n < 10 = (reverse l,a,n)
f l a n = f (m:l) (a + 1) m
where m = product [read [x] | x <- show n]
>>125 みたいに、1桁になるまでの変化の様子もリストで渡すようにした。
Haskell
main = mapM put [4,15,93,77,123,277777788888899]
put x = (putStrLn.concat) [show x," -> ",show a,
" loop and value is ",show n,". list = ",show l]
where (l,a,n) = f [] 0 x
f l a n| n < 10 = (reverse l,a,n)
f l a n = f (m:l) (a + 1) m
where m = product [read [x] | x <- show n]
264デフォルトの名無しさん
2019/09/02(月) 02:57:17.93ID:oioFkvSQ out:
4 -> 0 loop and value is 4. list = []
15 -> 1 loop and value is 5. list = [5]
93 -> 3 loop and value is 4. list = [27,14,4]
77 -> 4 loop and value is 8. list = [49,36,18,8]
123 -> 1 loop and value is 6. list = [6]
277777788888899 -> 11 loop and value is 0. list = [4996238671872,438939648,4478976,338688,27648,2688,768,336,54,20,0]
4 -> 0 loop and value is 4. list = []
15 -> 1 loop and value is 5. list = [5]
93 -> 3 loop and value is 4. list = [27,14,4]
77 -> 4 loop and value is 8. list = [49,36,18,8]
123 -> 1 loop and value is 6. list = [6]
277777788888899 -> 11 loop and value is 0. list = [4996238671872,438939648,4478976,338688,27648,2688,768,336,54,20,0]
265デフォルトの名無しさん
2019/09/02(月) 06:37:20.55ID:6t6D41pn >>257 Ruby
n = 16
x = Array.new(n){rand(0x100)}
b = n.times.reduce(0){|s, i| x[~i] * 0x100**i + s}
puts "%p => %0#{n}b" % [x, b]
# => [31, 95, 43, 108, 105, 54, 1, 122, 100, 48, 137, 121, 131, 188, 105, 244] =>
11111010111110010101101101100011010010011011000000001011110100110010000110000100010010111100110000011101111000110100111110100
n = 16
x = Array.new(n){rand(0x100)}
b = n.times.reduce(0){|s, i| x[~i] * 0x100**i + s}
puts "%p => %0#{n}b" % [x, b]
# => [31, 95, 43, 108, 105, 54, 1, 122, 100, 48, 137, 121, 131, 188, 105, 244] =>
11111010111110010101101101100011010010011011000000001011110100110010000110000100010010111100110000011101111000110100111110100
266デフォルトの名無しさん
2019/09/02(月) 06:39:28.02ID:6t6D41pn typo
puts "%p => %0#{n * 8}b" % [x, b]
# => [31, 95, 43, 108, 105, 54, 1, 122, 100, 48, 137, 121, 131, 188, 105, 244] =>
00011111010111110010101101101100011010010011011000000001011110100110010000110000100010010111100110000011101111000110100111110
100
puts "%p => %0#{n * 8}b" % [x, b]
# => [31, 95, 43, 108, 105, 54, 1, 122, 100, 48, 137, 121, 131, 188, 105, 244] =>
00011111010111110010101101101100011010010011011000000001011110100110010000110000100010010111100110000011101111000110100111110
100
267デフォルトの名無しさん
2019/09/02(月) 12:10:04.08ID:rT9Zixkt >>233
勉強になりましたw
勉強になりましたw
268デフォルトの名無しさん
2019/09/02(月) 12:49:28.87ID:YYsNPCXj269デフォルトの名無しさん
2019/09/02(月) 15:10:33.79ID:rT9Zixkt 全滅エンドか!?
270デフォルトの名無しさん
2019/09/02(月) 21:31:28.92ID:qij/0ceW271デフォルトの名無しさん
2019/09/03(火) 02:08:35.68ID:FeqFVaAA >>228
aa=$(echo ^{1..9}\\\{1,\\\}\$\\\| |sed -e "s/ //g; s/\\\|$//;"); seq 1 $((10**8)) |grep -e "$aa"
aa=$(echo ^{1..9}\\\{1,\\\}\$\\\| |sed -e "s/ //g; s/\\\|$//;"); seq 1 $((10**8)) |grep -e "$aa"
272デフォルトの名無しさん
2019/09/03(火) 03:13:14.41ID:4SpqHsfM 数学的な解き方わからず
このx>=3の自然数解を見つける
a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z
このx>=3の自然数解を見つける
a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z
273272
2019/09/03(火) 05:28:10.06ID:VYSmTHvF a=2 b=1で 3^x + 4^y = 5^z
は解無し
は解無し
274デフォルトの名無しさん
2019/09/03(火) 08:27:27.03ID:Sk67xQLY a b は実数? 正の整数?
275デフォルトの名無しさん
2019/09/03(火) 08:38:58.69ID:VYSmTHvF 出てくる文字、a b x y z はすべて自然数、正の整数です
276デフォルトの名無しさん
2019/09/03(火) 08:39:49.44ID:03sYx3ae a > b > 0 なの?
0 > a なら意味ないんだけど
出題者が問題をそもそも理解してなさそう
0 > a なら意味ないんだけど
出題者が問題をそもそも理解してなさそう
277デフォルトの名無しさん
2019/09/03(火) 08:44:26.60ID:VYSmTHvF すべて1以上の整数として、
x>=3、 a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z
を満たすものを見つける
そこでa=2 b=1の場合は解無しがわかっていて
任意のa,bに対して、(a^2 - b^2)^2 + (2ab)^2 = (a^2 + b^2)^2 が成り立つことも判っています
x>=3、 a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z
を満たすものを見つける
そこでa=2 b=1の場合は解無しがわかっていて
任意のa,bに対して、(a^2 - b^2)^2 + (2ab)^2 = (a^2 + b^2)^2 が成り立つことも判っています
278デフォルトの名無しさん
2019/09/03(火) 08:57:07.87ID:VYSmTHvF 指数2だと必ず成立するのはこれだからです
指数3以上で解けるのはどれか、あるかです
ピタゴラス数は無数にある
中学校の数学で習う定理に、「三平方の定理」或いは「ピタゴラスの定理」と呼ばれるものがある。
a^2 + b^2 = c^2 を満たす正の整数の組 (a, b, c) のことを、ピタゴラス数と呼ぶ。
例えば、(3, 4, 5) や (5, 12, 13) などは有名なピタゴラス数である。
ピタゴラス数が無限個存在する
任意の原始的ピタゴラス数 が (|m^2 ? n^2|, 2mn, m^2 + n^2) の形で表せることを示す。
https://nue2004.info/knowledge/knowledge97.htm
指数3以上で解けるのはどれか、あるかです
ピタゴラス数は無数にある
中学校の数学で習う定理に、「三平方の定理」或いは「ピタゴラスの定理」と呼ばれるものがある。
a^2 + b^2 = c^2 を満たす正の整数の組 (a, b, c) のことを、ピタゴラス数と呼ぶ。
例えば、(3, 4, 5) や (5, 12, 13) などは有名なピタゴラス数である。
ピタゴラス数が無限個存在する
任意の原始的ピタゴラス数 が (|m^2 ? n^2|, 2mn, m^2 + n^2) の形で表せることを示す。
https://nue2004.info/knowledge/knowledge97.htm
279デフォルトの名無しさん
2019/09/03(火) 09:27:31.81ID:fMS/rXUz \ / .::::::::::::::::::::::::;;:;;::,ッ、::::::::: ) く 数 す
\ l ,ッィrj,rf'"'"'" lミ::::::: く れ 学 ま
Y ,!ミ::::::: ヽ な 野 な
`ヽ、 | くミ:::::::: ノ い 郎 い
|、__ ャー--_ニゞ `i::::,rく か は
``''ー- ゝ、'l  ゙̄´彑,ヾ }::;! ,ヘ.) ! 帰
゙ソ """"´` 〉 L_ っ
/ i , /| て r
≡=- 〈´ ,,.._ i 't-'゙ | ,へ ,r┘
,、yx=''" `ー{゙ _, -、 ; l レ' ヽr、⌒ヽ'
゙、`--─゙ /! `、
_,,、- ゙、 ー'' / ; `、
-''"_,,、-''" ゙、 /;;' ,' / 、\
-''" / `ー─''ぐ;;;;' ,' ノ
// / ヾ_、=ニ゙
\ l ,ッィrj,rf'"'"'" lミ::::::: く れ 学 ま
Y ,!ミ::::::: ヽ な 野 な
`ヽ、 | くミ:::::::: ノ い 郎 い
|、__ ャー--_ニゞ `i::::,rく か は
``''ー- ゝ、'l  ゙̄´彑,ヾ }::;! ,ヘ.) ! 帰
゙ソ """"´` 〉 L_ っ
/ i , /| て r
≡=- 〈´ ,,.._ i 't-'゙ | ,へ ,r┘
,、yx=''" `ー{゙ _, -、 ; l レ' ヽr、⌒ヽ'
゙、`--─゙ /! `、
_,,、- ゙、 ー'' / ; `、
-''"_,,、-''" ゙、 /;;' ,' / 、\
-''" / `ー─''ぐ;;;;' ,' ノ
// / ヾ_、=ニ゙
280デフォルトの名無しさん
2019/09/03(火) 13:20:54.78ID:SA/JpX4x どう考えてもスレチだよなぁ
必要なのはプログラムじゃなく紙と鉛筆っぽいし
必要なのはプログラムじゃなく紙と鉛筆っぽいし
281デフォルトの名無しさん
2019/09/03(火) 13:43:33.95ID:WMTa8Qij このスレは数学嫌いな奴多いなぁ
べつにちょっとぐらいいいじゃないか
べつにちょっとぐらいいいじゃないか
282デフォルトの名無しさん
2019/09/03(火) 13:52:03.24ID:/IQ7x87c むしろこのスレは本当にコンピューター使わないと解けないような
パズル問題とかの方が解答つかないことが多い
パズル問題とかの方が解答つかないことが多い
283デフォルトの名無しさん
2019/09/03(火) 14:53:42.89ID:R1k47NOJ 掛け算があるので加速的に左の解が増えるので追い付かなくなる予感。
284デフォルトの名無しさん
2019/09/03(火) 15:14:05.99ID:R1k47NOJ285デフォルトの名無しさん
2019/09/03(火) 15:15:29.58ID:R1k47NOJ (a^2 - b^2)^x + (2ab)^y=0
(a^2 + b^2)^z=0
の連立方程式解くとよさそうに見えるが。
解くのむずくて俺は無理。
(a^2 + b^2)^z=0
の連立方程式解くとよさそうに見えるが。
解くのむずくて俺は無理。
286デフォルトの名無しさん
2019/09/03(火) 15:28:15.62ID:03sYx3ae >>285
何かの冗談? それじゃ明らかに解無しなんですが
何かの冗談? それじゃ明らかに解無しなんですが
287デフォルトの名無しさん
2019/09/03(火) 15:31:15.82ID:FbgAnO5f >>257 Ruby
N = 10
X = Random.new.bytes(N)
puts X.unpack('C*').map{|c| '%02X' % c}.join(' '), X.unpack('B*')
結果
82 30 D4 E1 07 32 27 3E A2 E5
10000010001100001101010011100001000001110011001000100111001111101010001011100101
N = 10
X = Random.new.bytes(N)
puts X.unpack('C*').map{|c| '%02X' % c}.join(' '), X.unpack('B*')
結果
82 30 D4 E1 07 32 27 3E A2 E5
10000010001100001101010011100001000001110011001000100111001111101010001011100101
288デフォルトの名無しさん
2019/09/03(火) 15:38:54.45ID:R1k47NOJ289デフォルトの名無しさん
2019/09/03(火) 15:40:16.69ID:03sYx3ae290デフォルトの名無しさん
2019/09/03(火) 15:45:42.09ID:R1k47NOJ 数学ダメなのでセオリー知らないんだけど。マジ解らん。
正直すまんかった。
正直すまんかった。
291デフォルトの名無しさん
2019/09/03(火) 15:47:50.03ID:R1k47NOJ292デフォルトの名無しさん
2019/09/03(火) 15:50:06.71ID:gHL/qcPl293デフォルトの名無しさん
2019/09/03(火) 15:52:04.84ID:R1k47NOJ294デフォルトの名無しさん
2019/09/03(火) 15:56:44.07ID:gHL/qcPl doubleの演算誤差出てるなwwww
295デフォルトの名無しさん
2019/09/03(火) 15:57:29.86ID:R1k47NOJ >>293 直しました。
大きな数で発見できているかな?
大きな数で発見できているかな?
296デフォルトの名無しさん
2019/09/03(火) 16:00:10.37ID:R1k47NOJ いや、精度飛んでて、うまく測れてないな。
297デフォルトの名無しさん
2019/09/03(火) 16:01:59.48ID:gHL/qcPl 演算誤差ではないか 誤差で=になるレベルじゃない
AとB出力してみ?
AとB出力してみ?
298デフォルトの名無しさん
2019/09/03(火) 16:02:55.16ID:R1k47NOJ 多倍長無いと証明には至らないな。
というわけで今回は抜けるわ。
乱文申し訳ない。
というわけで今回は抜けるわ。
乱文申し訳ない。
299デフォルトの名無しさん
2019/09/03(火) 16:03:35.69ID:gHL/qcPl あ、doubleからstd::size_tになってたw
300デフォルトの名無しさん
2019/09/03(火) 16:10:08.37ID:R1k47NOJ 色々弄ってみたけど、これで凍結しておくわ。
すまんかった。
すまんかった。
301デフォルトの名無しさん
2019/09/03(火) 16:42:54.68ID:03sYx3ae302デフォルトの名無しさん
2019/09/03(火) 16:46:54.03ID:R1k47NOJ303デフォルトの名無しさん
2019/09/03(火) 21:38:14.04ID:MpIMqTuu304デフォルトの名無しさん
2019/09/03(火) 22:12:17.83ID:VYSmTHvF x=y=z=2以外の解があるか?
すべて自然数、変数 a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z の解
答えしらず。 a=2 b=1だけはいまのところ他にないを証明可能
すべて自然数、変数 a>b、 (a^2 - b^2)^x + (2ab)^y = (a^2 + b^2)^z の解
答えしらず。 a=2 b=1だけはいまのところ他にないを証明可能
305デフォルトの名無しさん
2019/09/03(火) 22:33:37.84ID:dCTs9gWx306デフォルトの名無しさん
2019/09/03(火) 22:40:59.77ID:MpIMqTuu307デフォルトの名無しさん
2019/09/04(水) 00:41:31.51ID:5HyNYB53 304は3以上を仮定してない、すべて自然数
308デフォルトの名無しさん
2019/09/04(水) 02:57:47.93ID:5U+WeLbN あーこりゃ致命的に頭悪い奴か
数学も日本語も通じないとは
数学も日本語も通じないとは
309デフォルトの名無しさん
2019/09/04(水) 07:57:08.75ID:FC7xGJ7s 定理を発見したら著作権で保護されるのかな。
310デフォルトの名無しさん
2019/09/04(水) 08:46:01.17ID:HTJbgiFI 日本数学会に提出する前に
大学の教授にみてもらわないと
大学の教授にみてもらわないと
311デフォルトの名無しさん
2019/09/04(水) 09:59:12.24ID:bj6rvw0v 次スレは数学禁止ってスレタイに入れないとな
312デフォルトの名無しさん
2019/09/04(水) 10:54:57.98ID:wUnebE5/ >>310
そして手柄を横取りされる定期
そして手柄を横取りされる定期
313デフォルトの名無しさん
2019/09/04(水) 11:24:41.75ID:P7o6e2y0 お題: 平面上にいくつかの円 (内部も含む円) がある
それが重なったり重ならなかったりしていて、最も重なっている箇所ではN個の円が重なっているとする
このとき、各円の座標と半径が与えられた場合にNを返すプログラムを書け
それが重なったり重ならなかったりしていて、最も重なっている箇所ではN個の円が重なっているとする
このとき、各円の座標と半径が与えられた場合にNを返すプログラムを書け
314デフォルトの名無しさん
2019/09/04(水) 13:52:37.01ID:aB3hMBX/315デフォルトの名無しさん
2019/09/04(水) 14:06:48.93ID:HTJbgiFI それ円周率パイとネイピア数のe の積が
N個の円の重なる唯一の x座標とy座標の円達を与えられて返すの辛くないか?
N個の円の重なる唯一の x座標とy座標の円達を与えられて返すの辛くないか?
316デフォルトの名無しさん
2019/09/04(水) 14:13:24.75ID:yXyTPmQk317デフォルトの名無しさん
2019/09/04(水) 14:29:48.47ID:HTJbgiFI 例として313が N=4 で、それを与える円4つが
(x-ePi-1)^2+(y-ePi)^2=1
(x-ePi+1)^2+(y-ePi)^2=1
(x-ePi )^2+(y-ePi-1)^2=1
(x-ePi )^2+(y-ePi+1)^2=1
だったら大変かもしれない?
(x-ePi-1)^2+(y-ePi)^2=1
(x-ePi+1)^2+(y-ePi)^2=1
(x-ePi )^2+(y-ePi-1)^2=1
(x-ePi )^2+(y-ePi+1)^2=1
だったら大変かもしれない?
318デフォルトの名無しさん
2019/09/04(水) 17:19:01.11ID:reYoOADS319デフォルトの名無しさん
2019/09/04(水) 18:34:12.43ID:6EOP5CCF320デフォルトの名無しさん
2019/09/04(水) 18:42:19.25ID:8qjE+V3b321デフォルトの名無しさん
2019/09/04(水) 18:49:05.83ID:A7beDSD/ 5chはペアプレイではなくマルチプレイということをお忘れなく。
322デフォルトの名無しさん
2019/09/04(水) 19:10:06.78ID:5HyNYB53 >>318
省いててわかりずらいかもしれないがアウトライン。一般化はできないだろう解き方。
3^x + 4^y = 5^z の自然数解は(2,2,2)唯一つ
mod 3で1 ≡ (-1)^z、 z偶数が必要
z=2wとおくと 3^x = (5^w + 2^y) (5^w - 2^y)
簡単な考察で右辺の後項が3の倍数ならば前項は3の倍数になりえないので後項=1、前項=3^xが必要
w偶数とすると結果2式をmod 3で比較して不成立、w奇数が必要
y>=3ならばmod 8で5 ≡ 3^x、任意のxで不成立
y=1ならば解なし
省いててわかりずらいかもしれないがアウトライン。一般化はできないだろう解き方。
3^x + 4^y = 5^z の自然数解は(2,2,2)唯一つ
mod 3で1 ≡ (-1)^z、 z偶数が必要
z=2wとおくと 3^x = (5^w + 2^y) (5^w - 2^y)
簡単な考察で右辺の後項が3の倍数ならば前項は3の倍数になりえないので後項=1、前項=3^xが必要
w偶数とすると結果2式をmod 3で比較して不成立、w奇数が必要
y>=3ならばmod 8で5 ≡ 3^x、任意のxで不成立
y=1ならば解なし
323デフォルトの名無しさん
2019/09/04(水) 19:23:20.13ID:5HyNYB53 かいてから考えたら間違ってるところがでてきた
ここまではいいとして、これあってないな
> y>=3ならばmod 8で5 ≡ 3^x、任意のxで不成立
ここまではいいとして、これあってないな
> y>=3ならばmod 8で5 ≡ 3^x、任意のxで不成立
324デフォルトの名無しさん
2019/09/04(水) 19:26:32.69ID:5HyNYB53 いやあってた
5^2 ≡ 1 (mod 8)になってしまうとおもったら
w奇数だから、5^3 ≡ 5 (mod 8)だった
5しかでない
5^2 ≡ 1 (mod 8)になってしまうとおもったら
w奇数だから、5^3 ≡ 5 (mod 8)だった
5しかでない
325デフォルトの名無しさん
2019/09/04(水) 20:01:35.58ID:P7o6e2y0326デフォルトの名無しさん
2019/09/04(水) 22:19:56.37ID:bGWgoiea 少なくとも自分はAOJで見た記憶がある
たしか高校生向けのコンテストの問題だったはず…
たしか高校生向けのコンテストの問題だったはず…
327デフォルトの名無しさん
2019/09/04(水) 22:31:18.96ID:A7beDSD/328デフォルトの名無しさん
2019/09/04(水) 22:47:39.03ID:5HyNYB53 自作かとおもってたがWikipediaにほぼおなじのあった。解は指数2に限るという。
のってて解けてないとすると難問か
ピタゴラスの定理 - Wikipedia
Jesmanowicz 予想
1956年に Jesmanowicz が以下の予想を提出した。
(a, b, c) を原始ピタゴラス数、n を自然数とする。x, y, z が
(an)^x + (bn)^y = (cn)^z
で自然数解を持つには、x=y=z=2 であることが必要である。
のってて解けてないとすると難問か
ピタゴラスの定理 - Wikipedia
Jesmanowicz 予想
1956年に Jesmanowicz が以下の予想を提出した。
(a, b, c) を原始ピタゴラス数、n を自然数とする。x, y, z が
(an)^x + (bn)^y = (cn)^z
で自然数解を持つには、x=y=z=2 であることが必要である。
329デフォルトの名無しさん
2019/09/04(水) 22:56:59.22ID:5HyNYB53 Jesmanowicz予想で検索
KAKEN 研究期間 2011 ? 2012 不定方程式におけるTerai予想とJesmanowicz予想
まず始めに、Terai予想のケース(1)のP=q=r=2の場合(Jesmanowicz予想)について考察した。
藤田育嗣氏(日本大学)との共同研究で、Jesmanowicz予想を三つ組みa,b,cがある合同条件を満たす場合に証明した。
Pingzhi Yuan氏(華南師範大学)との共同研究では、申請者の以前の研究結果を大幅に拡張することが出来た。
次に、Terai予想のケース(1)の一般的な場合について考察した。
最近、Florian Luca氏(メキシコ自治国立大学モレリア数学研究所)が、以前の研究の多くを(本質的に)一般化する結果を与えた。
その手法は、Baker理論とそのp進版の理論が有効に用いられていた。しかし、その結果は、不完全な点があり、申請者はその部分を補う計算を行なった。
さらに、申請者はTerai予想の類似問題を提起した。それは、
2以上の自然数p,q,rに対して、a^p+b^q=c^rを満たすa,b,cに対して、
指数型ディオファントス方程式c^x+b^y=a^zは、q=r=2かつc=b+1のときに限り自然数解x,y,zを持ち、
そのときにただ一つの自然数解(x,y,z)=(1,1,p)を持つである。
申請者は、Terai予想で扱われている三つ組みa,b,cについて考察を行い、
Baker理論とそのp進版の理論を用いて、いくつかの場合に予想は成立することを証明した。
特に、後半の主張である"解の一意性"を証明した。
最後に、Terai予想では扱われない三つ組みについても研究結果を得た。
まず、Alain Togbe氏(Purdue大学)との共同研究を行い、氏の以前の連続整数に関する研究を広く拡張することが出来た。
また、申請者は、三つ組みがある線形回帰数列の項として与えられる場合に方程式の解を決定した。
それによって寺井伸浩氏(足利工業大学)によって提起されたフィボナッチ数列に関する予想を解決した。
https://kaken.nii.ac.jp/grant/KAKENHI-PROJECT-11J05674/
KAKEN 研究期間 2011 ? 2012 不定方程式におけるTerai予想とJesmanowicz予想
まず始めに、Terai予想のケース(1)のP=q=r=2の場合(Jesmanowicz予想)について考察した。
藤田育嗣氏(日本大学)との共同研究で、Jesmanowicz予想を三つ組みa,b,cがある合同条件を満たす場合に証明した。
Pingzhi Yuan氏(華南師範大学)との共同研究では、申請者の以前の研究結果を大幅に拡張することが出来た。
次に、Terai予想のケース(1)の一般的な場合について考察した。
最近、Florian Luca氏(メキシコ自治国立大学モレリア数学研究所)が、以前の研究の多くを(本質的に)一般化する結果を与えた。
その手法は、Baker理論とそのp進版の理論が有効に用いられていた。しかし、その結果は、不完全な点があり、申請者はその部分を補う計算を行なった。
さらに、申請者はTerai予想の類似問題を提起した。それは、
2以上の自然数p,q,rに対して、a^p+b^q=c^rを満たすa,b,cに対して、
指数型ディオファントス方程式c^x+b^y=a^zは、q=r=2かつc=b+1のときに限り自然数解x,y,zを持ち、
そのときにただ一つの自然数解(x,y,z)=(1,1,p)を持つである。
申請者は、Terai予想で扱われている三つ組みa,b,cについて考察を行い、
Baker理論とそのp進版の理論を用いて、いくつかの場合に予想は成立することを証明した。
特に、後半の主張である"解の一意性"を証明した。
最後に、Terai予想では扱われない三つ組みについても研究結果を得た。
まず、Alain Togbe氏(Purdue大学)との共同研究を行い、氏の以前の連続整数に関する研究を広く拡張することが出来た。
また、申請者は、三つ組みがある線形回帰数列の項として与えられる場合に方程式の解を決定した。
それによって寺井伸浩氏(足利工業大学)によって提起されたフィボナッチ数列に関する予想を解決した。
https://kaken.nii.ac.jp/grant/KAKENHI-PROJECT-11J05674/
330デフォルトの名無しさん
2019/09/04(水) 23:07:59.22ID:5HyNYB53 完全解決してないが、結構解けてるらしい
早稲田大学整数論セミナーの予定 (2014年度 第5回)
タイトル: 原始ピタゴラス数に関する Jesmanowicz 予想について
アブストラクト: 1956 年, Jesmanowiczはピタゴラス数に関する指数型不定方程式
(m^2 - n^2)^x + (2mn)^y = (m^2 + n^2)^z は, ただ一つの正の整数解 (x; y; z) = (2; 2; 2) を持つことを予想した.
ただし, m > n, gcd(m; n) = 1, m ≠ n mod 2 を満たす正の整数とする.
Journal of Number Theory の論文 (2014 年) において, n = 2 とき Jesmanowicz 予想が成り立つことを証明した.
これは, 与えられた n > 1 に対し m について何も仮定せず Jesmanowicz 予想が成り立つ最初の結果である.
最先端の楕円曲線や modular formの理論から導かれる一般化された Fermat 方程式に関する結果を用いて, m に何も条件を付けずに Jesmanowicz 予想が成り立つことを証明することができた.
本講演では, これをさらに拡張して, n=2 が奇素数の冪でかつ m > 72n のときJesmanowicz予想が成り立つことを証明できたので紹介する.
これらの結果の系として, n=2 が 50 未満の奇数のとき Jesmanowicz 予想が成り立つことが容易に得られる.
https://www.waseda.jp/sem-wnt/kako/pdf2014/20140516.pdf
早稲田大学整数論セミナーの予定 (2014年度 第5回)
タイトル: 原始ピタゴラス数に関する Jesmanowicz 予想について
アブストラクト: 1956 年, Jesmanowiczはピタゴラス数に関する指数型不定方程式
(m^2 - n^2)^x + (2mn)^y = (m^2 + n^2)^z は, ただ一つの正の整数解 (x; y; z) = (2; 2; 2) を持つことを予想した.
ただし, m > n, gcd(m; n) = 1, m ≠ n mod 2 を満たす正の整数とする.
Journal of Number Theory の論文 (2014 年) において, n = 2 とき Jesmanowicz 予想が成り立つことを証明した.
これは, 与えられた n > 1 に対し m について何も仮定せず Jesmanowicz 予想が成り立つ最初の結果である.
最先端の楕円曲線や modular formの理論から導かれる一般化された Fermat 方程式に関する結果を用いて, m に何も条件を付けずに Jesmanowicz 予想が成り立つことを証明することができた.
本講演では, これをさらに拡張して, n=2 が奇素数の冪でかつ m > 72n のときJesmanowicz予想が成り立つことを証明できたので紹介する.
これらの結果の系として, n=2 が 50 未満の奇数のとき Jesmanowicz 予想が成り立つことが容易に得られる.
https://www.waseda.jp/sem-wnt/kako/pdf2014/20140516.pdf
331デフォルトの名無しさん
2019/09/04(水) 23:25:42.22ID:4CPx11+J332デフォルトの名無しさん
2019/09/05(木) 00:10:35.11ID:ymsvBiyv333デフォルトの名無しさん
2019/09/05(木) 10:41:35.98ID:jPhMORz8 置く場所の最大サイズ2000*2000くらいまでだとprocessingとかで半透明の円を重ね合わせれば一番濃いところが正解だから合ってるかどうかだいたい見て分かる
rが小数で半径が0.0001から1億くらいまでまちまちだと面倒
rが小数で半径が0.0001から1億くらいまでまちまちだと面倒
334デフォルトの名無しさん
2019/09/05(木) 10:53:13.59ID:Wm4c6P24 >>327,331-332
俺とは問題の解釈が違うようだ?
俺とは問題の解釈が違うようだ?
335デフォルトの名無しさん
2019/09/05(木) 11:32:41.41ID:JTGocygG >>334
そいつらはいつものアホやからスルーしなはれ
そいつらはいつものアホやからスルーしなはれ
336デフォルトの名無しさん
2019/09/05(木) 13:09:10.29ID:n5jm1pTY337314
2019/09/05(木) 21:33:33.48ID:Wm4c6P24 >>313 Java
https://paiza.io/projects/iamhQLuhZskbvv3lCIrj5Q
なんか思いつけたので書いた
いつもはideoneやけど、画像出力もしたくなったのでpaiza
入力データは https://mevius.5ch.net/test/read.cgi/tech/1549160513/405
https://paiza.io/projects/iamhQLuhZskbvv3lCIrj5Q
なんか思いつけたので書いた
いつもはideoneやけど、画像出力もしたくなったのでpaiza
入力データは https://mevius.5ch.net/test/read.cgi/tech/1549160513/405
338デフォルトの名無しさん
2019/09/06(金) 18:11:06.63ID:O7F8x+Ks >>337
お前いつもスマートだよな
お前いつもスマートだよな
339デフォルトの名無しさん
2019/09/06(金) 21:58:05.28ID:h6IBFFVJ 材料グループAと材料グループBがあるとする。
それぞれには、ランダムな固有値を持っており、
固有値の差が、ある数値以下の組み合わせのみ使用可能とする。
ただし、材料グループA、B内の材料は一度使うとなくなるため一度しか組み合わせれない。
それぞれのグループの材料が100ずつあったとして適切に組み合わせれば
全てがマッチングできる。ただ人組でもペアを間違えるとマッチングできない。
こういったことを実現するためには、どういった考え方でプログラミングすればいいでしょうか。
それぞれには、ランダムな固有値を持っており、
固有値の差が、ある数値以下の組み合わせのみ使用可能とする。
ただし、材料グループA、B内の材料は一度使うとなくなるため一度しか組み合わせれない。
それぞれのグループの材料が100ずつあったとして適切に組み合わせれば
全てがマッチングできる。ただ人組でもペアを間違えるとマッチングできない。
こういったことを実現するためには、どういった考え方でプログラミングすればいいでしょうか。
340デフォルトの名無しさん
2019/09/06(金) 22:02:46.96ID:adnLBrFU 動的計画法でいいのかな?
オレできねーけど。
オレできねーけど。
341デフォルトの名無しさん
2019/09/06(金) 22:06:24.07ID:IlHiLkpw >>339
各グループの材料を固有値の昇順にソートして小さい方からペア作ってくのではダメなのか?
各グループの材料を固有値の昇順にソートして小さい方からペア作ってくのではダメなのか?
342デフォルトの名無しさん
2019/09/06(金) 22:10:20.13ID:adnLBrFU A:大<->小
B:小<->大
のペアがましといえばまし。
真ん中がマッチしない可能性はある。
B:小<->大
のペアがましといえばまし。
真ん中がマッチしない可能性はある。
343339
2019/09/06(金) 22:10:34.94ID:h6IBFFVJ なるほど、とても簡単な問いだったのですね。
なんか難しい事ばかり考えていました。
なんか難しい事ばかり考えていました。
344デフォルトの名無しさん
2019/09/06(金) 22:11:12.30ID:5B1pyUbX diff のアルゴリズムがもうちょっと複雑なのにも対応できるやつじゃなかったか?
345デフォルトの名無しさん
2019/09/06(金) 22:14:00.34ID:adnLBrFU あー、差が以下か。
A:小<->大
B:小<->大
でいいわ。。。
俺もなんか難しいこと考えてた。そーりー。
A:小<->大
B:小<->大
でいいわ。。。
俺もなんか難しいこと考えてた。そーりー。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 防衛省、中国を完全論破www 「事前通告があったのは海自であって空自ではない」 高市早苗勝利 [175344491]
- ダイソンのホットアンドクールってどう?
- 高市早苗さん、もう自決でしか許されないレベルになる [402859164]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★4 [597533159]
- ✋🏿( ・᷄ὢ・᷅ )朝飯食ってから糞するのは無理でしょ……
