[過去ログ] 【モリタポ有償】C/C++の問題を片付けます(2) (1001レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
516(5): ◆6W4srb4nmo 2011/04/25(月)11:58 AAS
[1] 授業数学の問題をC言語で解く
[2] 問題
整数xを0から100000までの整数として,xが3つの素数の和で表現できるなら
その三素数を出力するプログラムを作成せよ。立方数が最大の組合せを出力せよ。
[3.1] 7
[3.2] gcc
[3.3] C
[4] 期限:25日9:00
[5] その他制限: 純粋Cライブラリ。
528(1): 2011/04/25(月)16:59 AAS
あれ?ここまで◆QZaw55cn4cの書き込みが無いって事は、ひょっとして
>>516のプログラムが書けないのかな?
534(1): ◆QZaw55cn4c [qzaw55cn4c@a.email.ne.jp] 2011/04/25(月)21:03 AAS
>>516
外部リンク:codepad.org
2chスレ:tech の指摘を受けて細かいところを変更しました。
>素数の調べ方がクソ
エラトステネスのふるいは必要なメモリ容量が半端でないので、「クソ」かもしれませんが、素朴な方法にしました。10万までなら、(私の環境では)十分な速度が出ています。
しかし、割り算を二回実行してしまうのはなんとかしたいと思いつつも改良できないでいます。
>ループにも無駄が多すぎ
ちょっとだけましになったと思います。
549(5): ◆QZaw55cn4c [qzaw55cn4c@a.email.ne.jp] 2011/04/25(月)23:17 AAS
>>544
ご指摘感謝いたします。たしかに無駄、あるいはバグでした。
>>516
外部リンク:codepad.org
>>518
外部リンク:codepad.org
>>545
どうもです。
559(5): ◆QZaw55cn4c [qzaw55cn4c@a.email.ne.jp] 2011/04/26(火)19:17 AAS
>>557
ご指摘ありがとうございます。たしかにまだまだ改良の余地はありました。とりあえず、>>518 の foundp() を取り入れました。
Knuth だったか、最初の思いつきはベストの思いつきではない、というわけでした。
>>516
外部リンク:codepad.org
でも、ここまで来て、私以外にコードを晒す人はいないようですね。
672(4): 2011/04/29(金)04:44 AAS
>>516
和を再利用して、計算回数減らしてみた
篩のところの時間が大部分だから、ほとんど効果ないのがビミョー
#include <stdio.h>
#include <stdlib.h>
#define N 1000000
int main(void)
{
char sieve[N] = {0, 0, 1};
int i, j, k, head, tail, Ans, length, sum, tail_indx, sum_t;
省17
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.218s*