0827笔试

项目分配

一个人可以负责多个项目,一个项目只能由一个人负责,每个员工i负责项目j
的收益为a[i, j],求最大收益?

输入

3 3
1 3 3
2 2 2
3 2 1

输出

9

就是每个项目的最大收益累加和。

#include 
using namespace std;
//int a[1005][1005];
int main(){
    int n, m;
    cin>>n>>m;
    int b[1005] = {0};
    int a;
    for(int i=0; i>a;
            if(a > b[j]) b[j] = a;
        }
    }
    int sum = 0;
    for (int i=0; i

法阵的最大威力

法阵由正多边形构成(至少是正三边形),每个基座有一个威力值v_i,法阵威力值为所有基座的威力值的和。但是有些基座的威力是负值,这时我们可以移除部分法阵以使法阵威力最大,但是基座的位置不能移动,求得到的法阵的最大威力(注意:法阵是正多边形

输入 第一行,基座个数,第二行,每个基座的威力

6
1 5 2 -3 3 -3

输出

6

正六边形里有正三边形,正八边形里有正四边形,正九边形里有正三边形,整除关系,然后遍历所有的正多边形即可

#include 
using namespace std;
int a[20005];
int main(){
    int n;
    cin>>n;
    int result = 0;
    for(int i=0; i>a[i];
        result += a[i];
    }
    for(int k=3; k<=n/2; k++){
        if(n%k == 0){
            int step = n/k;
            for (int i=0; i

你可能感兴趣的:(0827笔试)