トップページ > プログラム > 2015年09月21日 > TV+aglfl

書き込み順位&時間帯一覧

6 位/149 ID中時間01234567891011121314151617181920212223Total
書き込み数0003000000010000000000015



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
訂正
またもや訂正(スマンコ)
プログラミングのお題スレ Part7 [転載禁止]©2ch.net

書き込みレス一覧

プログラミングのお題スレ Part7 [転載禁止]©2ch.net
833 :デフォルトの名無しさん[sage]:2015/09/21(月) 03:09:20.39 ID:TV+aglfl
>>814

愚直に日本語

0. s=0とする
1.n=0
2. nを10進数であらわしたときに含まれる1の数
を数えそれをdとおく
3. k=0,...9として
4. k=1のときはd+1,それ以外をsに足しn+kに一致したら
出力して終了
5. 3のループを継続
6. n=n+10として1.へ

2.の処理の詳細
d=0;m=n;while(m){ d=(m % 10==1)?1:0; m/=10;}

愚直で効率が悪いのでCで書いても100m秒もかかって
しまった。
プログラミングのお題スレ Part7 [転載禁止]©2ch.net
834 :訂正[sage]:2015/09/21(月) 03:10:53.01 ID:TV+aglfl
4.k=1のときはd+1,それ以外はdをsに足し、sがn+kに一致したら
出力して終了(n+k<2の場合は継続)
プログラミングのお題スレ Part7 [転載禁止]©2ch.net
835 :またもや訂正(スマンコ)[sage]:2015/09/21(月) 03:12:02.29 ID:TV+aglfl
6. n=n+10として2.へ
プログラミングのお題スレ Part7 [転載禁止]©2ch.net
840 :デフォルトの名無しさん[sage]:2015/09/21(月) 11:47:33.16 ID:TV+aglfl
C語で書き直し
[?]には整数型変数名を入れてください

#include <stdio.h>
static int odai814(void){
int [?]=0,[?]=0,[?],[?],[?];for(;;[?]+=10){[?]=[?],[?]=0;
while([?])[?]+=(([?]%10)==1)?1:0,[?]/=10;
for([?]=0;[?]<10;[?]++)if(([?]+=([?]==1)?[?]+1:
[?])==[?]+[?])if([?]+[?]>1)
return [?]+[?];}}
int main(void) {printf("%d\n",odai814());return 0;}
プログラミングのお題スレ Part7 [転載禁止]©2ch.net
847 :デフォルトの名無しさん[sage]:2015/09/21(月) 23:29:01.05 ID:TV+aglfl



※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。