HDU 计算直线的交点数
2015-06-05 21:22
459 查看
计算直线的交点数
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other)Total Submission(s) : 41 Accepted Submission(s) : 19
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。
Input
输入数据包含多个测试实例,每个测试实例占一行,每行包含一个正整数n(n<=20),n表示直线的数量.Output
每个测试实例对应一行输出,从小到大列出所有相交方案,其中每个数为可能的交点数,每行的整数之间用一个空格隔开。Sample Input
2 3
Sample Output
0 1 0 2 3
Author
lcySource
ACM暑期集训队练习赛(九)AC代码:
#include <iostream> #include <cstring> using namespace std; int dp[22][201]; int main(){ memset(dp,0,sizeof(dp)); int i=0,j,n; while(i<21){ dp[i++][0]=1; } for(i=2;i<21;++i){ for(j=1;j<i;++j){ for(n=0;n<200;++n){ if(dp[i-j] ==1){ dp[i][n+j*(i-j)]=1; } } } } while(cin>>n){ for(j=0;j<n*(n-1)/2;++j){ if(dp [j]) cout<<j<<' '; } cout<<n*(n-1)/2<<'\12'; } return 0; }
相关文章推荐
- VNR共享辞书指南 Shared Dictionary Tutorial
- 【转】解决eclipse连接不到genymotion的问题
- Android学习日记(3)
- 处理数据库Null值
- JSP运行机制
- Android不同方式启动导致重复启动相同的Activity的问题解决办法(转载,解决了我的问题)
- 动作回调函数 (CallFunc,CallFuncN,CCCallFuncND)
- ActionScript 3.0 学习(二) Flash Builder找不到所需版本的Adobe Flash Player
- java内置数据结构--Map接口与特性
- VNR共享辞书中翻译的转码和代理
- linux下一个C语言flock功能使用 .
- POJ 1979 Red and Black dfs 难度:0
- NGUI使用4——创建动态字体
- Android的TabHost组件-android的学习之旅(四十)
- 三层架构--如何判断一项功能到底属于哪一程
- Android的TabHost组件-android的学习之旅(四十)
- Android的TabHost组件-android的学习之旅(四十)
- CCNA学习指南 IP路由
- Odroid U3 烧写镜像文件
- [hdu]Tempter of the Bone