HUD_2015偶数加算
817 ワード
2 n , m ,
最後の数が落札されたら、最後の数の平均値を直接求めます.
本方法では複雑ですが、作れますし、
以下のこの方法は巧みで、特にprintf(c+?"%d":"%d",b+m-1);
巧みな発見法則だけでなく、m個当たりの平均値がm個の数の最初の数bにm-1を加えることである.
出力2つの数の間のスペースの問題を直接解決した.
#include <stdio.h>
int main( )
{
int i, n, m, b, c;
while (scanf("%d%d", &n, &m) != EOF)
{
b = 2;
c = 0;
for (i = 0 ; i < n / m ; i++)
{
printf(c++ ? " %d" : "%d", b + m - 1);
b += m * 2;
}
printf(n % m ? " %d
" : "
", b + n % m - 1);
}
return 0;
}