/* 写一个程序, 要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。 如:100个1是一个组合,5个1加19个5是一个组合。。。。 请用C++语言写。 */ int x, y, z, cnt = 0; // 0 <= x <= 100; 0 <= y <= 50; 0 <= z <= 20; /*笨法 for (z = 0; z <= 20; z++) { for (y = 0; y<= 50; y++) { for (x = 0; x <= 100; x++) { if (100 == x + 2*y + 5*z) { cnt++; } } } } cout << cnt; */ //优秀算法:x+5*z为偶 int cnt = 0; for (int x = 0; x < =100; x += 5) { cnt += (x + 2)/2;//偶数以内偶数个、奇数以内奇数个数 (x + 2)/2 }
1,2,5这三个数不同个数组合_h
最新推荐文章于 2024-04-23 17:09:00 发布