本文主要是介绍2017多校6 1011 Classes,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
http://acm.hdu.edu.cn/showproblem.php?pid=6106
共有3个辅导班,给出若干班级中学生报A,B,C,AB,AC,BC,ABC的情况,求班级人数最多有多少人,但题目还说存在错误信息,但对于错误信息的处理不是说的很明白,看样例介绍对于错误信息是直接忽视的。至于如何去判断给的信息是否为正确信息呢,可以运用VN图的知识来写。一个班级的人数公式是
A+B+C-AB-AC-BC+ABC.
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main(){int t;cin>>t;while(t--){int n;cin>>n;long long int maxx=0;long long int a,b,c,ab,bc,ac,abc;for(int i=1;i<=n;i++){cin>>a>>b>>c>>ab>>bc>>ac>>abc;if(a-ac-ab+abc<0)continue;if(b-bc-ab+abc<0)continue;if(c-ac-bc+abc<0)continue;if(ac-abc<0)continue;if(bc-abc<0)continue;if(ab-abc<0)continue;if(abc<0)continue;maxx=max(maxx,a+b+c-ab-ac-bc+abc);}cout<<maxx<<endl;}return 0;
}
这篇关于2017多校6 1011 Classes的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!