计蒜客17291同学的爱好
3122+
作者:crxis 发布:2017-09-24 分类:数学
题目大意:n个人,喜欢a的有a人,喜欢b的有b人,喜欢c的有c人,喜欢ab的有d人,喜欢ac的有e人,喜欢bc的有f人,喜欢abc的有多少人?
蒜蒜班上有 位同学,每位同学都会喜欢篮球、足球或羽毛球中的一项或者多项。其中,喜欢篮球的有 人,喜欢足球的有 人,喜欢羽毛球的有 人,既喜欢篮球也喜欢足球的有 人,既喜欢篮球也喜欢羽毛球的有 人,既喜欢足球也喜欢羽毛球的有 人。
请你计算,有多少同学同时喜欢篮球、足球和羽毛球。
输入格式
第一行输入一个整数 ,表示同学总数。
第二行输入 个整数 ,每两个数之间用一个空格隔开。
输出格式
输出一个整数,表示有多少同学同时喜欢篮球、足球和羽毛球。
数据规模和约定
对于 的数据:。
对于 的数据:,,,,。
样例输入1
4 3 3 3 2 3 2
样例输出1
2
样例输入2
14 11 9 7 7 5 6
样例输出2
5
解题思路
显然,用容差原理可以解,如果不会,画一下图答案也就出来了。
画图怎么画?画3个圈分别代表a、b、c,这3个圈有交叉部分,就像三原色的图一样,总人数怎么算呢?如果a+b+c,那么ab、ac、bc等会多加1次,因此需要减去ab、ac、bc,这样会发现中间部分加了3次后又减了3次,故最后需要加一次abc,即a+b+c -ab-ac-bc +abc = n,abc = n – a – b – c + ab + ac + bc。