题目:
这是一幅心理阴影面积图。我们都以为自己可以匀速前进(图中蓝色直线),而拖延症晚期的我们往往执行的是最后时刻的疯狂赶工(图中的红色折线)。由红、蓝线围出的面积,就是我们在做作业时的心理阴影面积。
现给出红色拐点的坐标 (x,y),要求你算出这个心理阴影面积。
输入格式:
输入在一行中给出 2 个不超过 100 的正整数 x 和 y,并且保证有 x>y。这里假设横、纵坐标的最大值(即截止日和最终完成度)都是 100。
输出格式:
在一行中输出心理阴影面积。
友情提醒:三角形的面积 = 底边长 x 高 / 2;矩形面积 = 底边长 x 高。嫑想得太复杂,这是一道 5 分考减法的题……
输入样例:
90 10
输出样例:
4000
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
题意解析:
给出一个坐标点,求阴影部分的面积, 实际上可以将整个正方形(虽然看上去像是长方形,但是实际上就是 100 * 100的正方形)看成是两个三角形,而上三角形可以忽略不管,我们针对下三角形进行观察,不难看出它可以拆分成四个板块:
这四个板块共同构成下三角形的面积(100 * 100 / 2),我们不难发现,得到坐标(x, y)后,除去心理影响之外的三个板块的面积都是可以求得的,所以,心理影响面积 = 下三角形面积 - 其余三个板块的面积 = 100 * 100 / 2 - y * x / 2 - y * (100 - x) - (100 - x) * (100 - y) / 2 计算后输出即可。
AC代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int x, y;
cin >> x >> y;
cout << 100 * 100 / 2 - y * x / 2 - y * (100 - x) - (100 - x) * (100 - y) / 2;
return 0;
}