法律咨询网站开发,微信建网站服务,广州网站建设公司乐云seo598,网络推广 深圳P8720 [蓝桥杯 2020 省 B2] 平面切分
思路#xff1a;首先借用dalao的图解释一下#xff0c;又多出一条与当前平面任意一条直线都不重合线时#xff0c;多了的平面是交点数1#xff0c;所以用双层循环每次往里面加一条直线#xff0c;计算交点 #include iostream…P8720 [蓝桥杯 2020 省 B2] 平面切分
思路首先借用dalao的图解释一下又多出一条与当前平面任意一条直线都不重合线时多了的平面是交点数1所以用双层循环每次往里面加一条直线计算交点 #include iostream
#include cstring
#include set
using namespace std;
int n;
int a,b;
typedef pairlong double,long double LD;
setLD II;
LD q[1010];int main()
{cinn;int ans-1;for(int i0;in;i){cinab;II.insert({a,b});} for(auto iII.begin();i!II.end();i){q[ans]{(*i).first,(*i).second};}int res1;for(int i0;ians;i){setLD lll;for(int j0;ji;j){long double k1q[i].first;long double b1q[i].second;long double k2q[j].first;long double b2q[j].second;if(k1k2) continue;long double x(b2-b1)/(k1-k2);long double yk1*xb1;lll.insert({x,y});}reslll.size();res;}coutres;return 0;
}
P8651 [蓝桥杯 2017 省 B] 日期问题
有点烦的一道题刚开始没想闰年想着直接几个if判断解决浪费了快一个小时调程序
附未加闰年判断的代码
#include iostream
using namespace std;
int a,b,c;int daysOfMonth[] {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};int main()
{scanf(%d/%d/%d,a,b,c);if(a60){if(b1b12cdaysOfMonth[b]) printf(19%02d-%02d-%02d\n,a,b,c);}else if(a59){if(b1b12cdaysOfMonth[b]) printf(20%02d-%02d-%02d\n,a,b,c);}if(c60){if(a1a12bdaysOfMonth[a]) printf(19%02d-%02d-%02d\n,c,a,b);if(b1b12adaysOfMonth[b]) printf(19%02d-%02d-%02d\n,c,b,a);}else if(c59){if(a1a12bdaysOfMonth[a]) printf(20%02d-%02d-%02d\n,c,a,b);if(b1b12adaysOfMonth[b]) printf(20%02d-%02d-%02d\n,c,b,a);}return 0;
}
思路这个数据范围三种循环也不会t所以就这样直接判断还有记得根据年份转换一下二月份的天数
#include iostream
using namespace std;
int a,b,c;
int daysOfMonth[] {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};bool isrunnian(int x)
{return (x%40x%100!0)||(x%4000);
}int main()
{scanf(%d/%d/%d,a,b,c);for(int i1960;i2059;i){daysOfMonth[2](isrunnian(i)?29:28);for(int j1;j12;j){for(int k1;kdaysOfMonth[j];k){if((ai%100bjck)||(ajbkci%100)||(akbjci%100)) printf(%d-%02d-%02d\n,i,j,k);}}}return 0;
}
P8635 [蓝桥杯 2016 省 AB] 四平方和
思路直接循环找数让n减去其他三个数的平方和开根号以后因为是整数所以会丢掉小数点后的数字利用这个判断
#include iostream
#include cmath
using namespace std;
int n;int main()
{cinn;for(int a0;a*an;a){for(int ba;a*ab*bn;b){for(int cb;a*ab*bc*cn;c){int tn-a*a-b*b-c*c;int dsqrt(t);if(d*dt){printf(%d %d %d %d,a,b,c,d);return 0; }}}}return 0;
}