鋼管の長さが短い期待成長NCMの69センチメートル及び39センチメートル2つのサイズに切断した接続。最小限に予想以上を削減する方法を少なくとも短期飼料、の各カットのこれら2つの仕様の前提の下で?
もしN <108センチメートル、出力「エラー」。
入力:
369
出力:
。3. 4. 6 // 3の69センチメートル、4は、以上の材料39センチメートル長さが6センチ。
#include <stdio.h>
#include <stdlib.h>
const int MAXN = 100;
int c,rest,a[MAXN],minrest,a39,a69;
void input_data()
{
scanf("%d",&c);
if (c < 108)
{
printf("error");
exit(0);
}
rest = c - 108;
minrest = rest;
a[39] = 1;a[69] = 1;
a39 = 1;a69 = 1;
}
void sear_ch(int t)
{
a[t]++;
rest-=t;
if (rest < minrest)
{
minrest = rest;
a39 = a[39];a69 = a[69];
}
if (rest >= 69)
sear_ch(69);
if (rest >=39)
sear_ch(39);
rest+=t;
a[t]--;
}
void get_ans()
{
if (rest >= 69)
sear_ch(69);
if (rest >=39)
sear_ch(39);
}
void output_ans()
{
printf("%d\n",a69);
printf("%d\n",a39);
printf("%d\n",minrest);
}
int main()
{
input_data();
get_ans();
output_ans();
return 0;
}