2021第十二届蓝桥杯省赛c++B组_直线
2022/2/4 20:13:10
本文主要是介绍2021第十二届蓝桥杯省赛c++B组_直线,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
// #include<bits/stdc++.h> using namespace std; struct point { double x,y; }p[25*25]; map< pair<double,double>,int >maps; int main() { int cnt=0,ans=20+21,i,j; double k,b; // double 类型 // 构造点 for( i=0;i<20;i++ ) { for( j=0;j<21;j++ ) { p[cnt].x=i; p[cnt].y=j; cnt++; } } // 遍历两点 for( i=0;i<cnt;i++ ) { for( j=0;j<cnt;j++ ) { // 特殊处理 横线和竖线 if( p[i].x==p[j].x || p[i].y==p[j].y ) continue; k=( p[i].y-p[j].y )/( p[i].x-p[j].x ); b=( p[i].x*p[j].y-p[j].x*p[i].y )/( p[i].x-p[j].x ); // b=p[i].y-k*p[i].x; if( maps[ { k,b } ]==0 ) { maps[ { k,b } ]=1; ans++; } } } printf("%d\n",ans); return 0; }
// b=y-kx; =y1-(y1-y2)/(x1-x2)*x1; =( y1*x1-y1*x2 -y1*x1+y2*x1 )/( x1-x2 ); =( x1*y2-x2*y1 )/( x1-x2 );
这篇关于2021第十二届蓝桥杯省赛c++B组_直线的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享