您的位置:首页 > 其它

C市现在要转移一批罪犯到D市,C市有n名罪犯,按照入狱时间有顺序,另外每个罪犯有一个罪行值,值越大罪越重。现在为了方便管理,市长决定转移入狱时间连续的c名犯人,同时要求转移犯人的罪行值之和不超过t,问有多少种选择的方式?

2017-02-23 16:00 1296 查看
// ConsoleApplication12.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"
// ConsoleApplication12.cpp : 定义控制台应用程序的入口点。
//

#include <iostream>
#include <vector>
using namespace std;

int main()
{
int n, t, c;
while (cin >> n)
{
cin >> t;
cin >> c;
vector<int> crimeVal;

int num=0;
//输入罪犯的罪行值
for (int i = 0;i < n;i++)
{
int value;
cin >> value;
crimeVal.push_back(value);
}

for (int i = 0;i < crimeVal.size() - c+1;i++)
{
int sum = 0;
//      cout << "i:" << i << endl;
for (int j = i;j < c+i;j++)
{
sum = sum + crimeVal[j];
}
if (sum <= t)
{
num++;
}
/*else
{
break;
}*/
}
//  cout << "方案数目:";
cout << num << endl;
}

return 0;
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐