http://www.cnblogs.com/alihenaixiao/p/4107907.html#undefined。这个博客有详解,我这个只是写一些·自己的总结。

问题:平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。
      比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。

析:   多条直线在一起时,要么相交,要么平行,所以我们可以把n条直线分为平行的一组,不平行的一组,那么答案就出来了;

    平行的那组(假设有i条平行)交点数为0,那么相交的那组 (还有n-i条)交点为f(n-i),;两组之间的交点有i*(n-i)个交点,三者相加便是n条直线存在交点的情况,而随着i与n-i的          变化,n条直线的交点数目情况便都出来了。

代码:

#include<stdio.h>
int dp[21][191];            //d[直线的总数][交点的个数]。

int main()
{
  int i,j,k,n;
  for(i=0;i<21;i++)
  {
    dp[i][0]=1;
  }
  for(i=1;i<21;i++) //i代表线段总数,j代表平行的线段总数,那么(i-j)代表相交的直线总数。
    for(j=0;j<i;j++)
    {
      for(k=0;k<=i*(i-1)/2;k++) //i条直线最多有(i-1)/2个交点。
      {
        if(dp[i-j][k]) //这个是检查当有(i-j)条直线时存不存在这些直线有k个交点的情况。
        dp[i][(i-j)*j+k]=1;
      }
    }
  }
  while(~scanf("%d",&n))
  {
    for(i=0;i<n*(n-1)/2;i++)
    {
      if(dp[n][i])printf("%d ",i);
    }
    printf("%d\n",n*(n-1)/2);
  }
  return 0;
}

hd acm1466的更多相关文章

  1. ATI Radeon HD 5450 with full QE/CI Support ( 转载 )

    ATI Radeon HD 5450 with full QE/CI Support - DSDT (Contains HDMI Audio Edit Too) & AGPM included ...

  2. XPS 15 9530使用Windows10频繁发生Intel HD Graphics 4600驱动奔溃的一种解决方法

    本人使用XPS 15 9530.集成显卡为Intel HD Graphics 4600.操作系统Windows 10 Pro,使用过程当中经常会发生集成显卡奔溃的问题,错误提示如下: Display ...

  3. Radeon HD 7850 vs Radeon R9 270X

    Radeon HD 7850 vs Radeon R9 270X  HW compare   Intro The Radeon HD 7850 comes with a GPU core speed ...

  4. 电影TS、TC、SCR、R5、BD、HD等版本是什么意思

    在很多电影下载网站的影片标题中我们都能看到,比如<刺杀希特勒BD版>.<游龙戏凤TS版>等,这些英文缩写都是什么意思呢?都代表什么画质?以下就是各个版本的具体含义: 1.CAM ...

  5. stm32类型cl、vl、xl、ld、md、hd的含义

    - startup_stm32f10x_ld_vl.s: for STM32 Low density Value line devices - startup_stm32f10x_ld.s: for ...

  6. 瑞昱Realtek(Realtek HD Audio Driver)音频声卡驱动R2.49 for Win7_Vista

    不管是在高端系列主板上,还是在低端系列主板上,我们都能看到Realtek瑞昱的身影,Realtek HD Audio Driver能够支持所有的Realtek HD Audio音频驱动.Realtek ...

  7. cocos2d-x 2.0.3 设置高清模式注意事项(已移除-hd方式)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=304 在cocos2d-x 2. ...

  8. %hd %d %ld %u ......

    %d 有符号10进制整数 %ld 长整型 %hd短整型%md,m指定的是输出字段的宽度,默认左补空格, 如果数据的位数小于m,则左端补以空格,若大于m,则 按实际位数输出,如: printf(&quo ...

  9. 求刷Kindle Fire HD的方法

    前几天入手了台Amazon Kindle Fire HD 其系统是经过Amazon尝试改造过的Android,用起来很不爽,想刷个CM10之类的,求教程和工具.

随机推荐

  1. 百度js 获取定位城市名称

    首先引用百度 script <script type="text/javascript" src="http://api.map.baidu.com/api?typ ...

  2. BAT都来参加的 DevOps Master 培训

    原文:http://www.sohu.com/a/128425731_262549 自高效运维社区开设 DevOps Master 认证培训以来,已经总共有120多人拿到证书,其中在今年春节后,有68 ...

  3. 【Hadoop基础教程】3、Hadoop之伪分布式环境搭建(转)

    伪分布式模式即单节点集群模式,所有的守护进程都运行在同一台机器上.这种模式下增加了代码调试功能,可以查看内存.HDFS文件系统的输入/输出,以及与其他守护进程交互.以hadoop用户远程登录K-Mas ...

  4. kubernetes高级之动态准入控制

    系列目录 动态准入控制器文档介绍了如何使用标准的,插件式的准入控制器.但是,但是由于以下原因,插件式的准入控制器在一些场景下并不灵活: 它们需要编译到kube-apiserver里 它们仅在apise ...

  5. Unity3D性能优化之Draw Call Batching

    在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API(iOS系统中为OpenGL ES).每个绘制调用需要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销. Unity在运行时 ...

  6. RealProxy AOP过滤方法的参数

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...

  7. PHP-Socket-阻塞与非阻塞,同步与异步概念的理解

    1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步:      所谓同步,就是在发出一个功能调用时,在没 ...

  8. Python 类方法、实例方法、静态方法

    实例方法:类中第一个参数为self的方法. 类方法:类中第一个参数为类,约定写为cls,并被@classmethod修饰的方法. 静态方法:类中被@staticmethod修饰的方法. 类变量:定义在 ...

  9. InitialContext和lookup

    http://wxg6203.iteye.com/blog/680830 最近因为工作需要开始学习Ejb3,遇到了一个让我很郁闷的事情,做一下小小的总结——小心new InitialContext() ...

  10. 并行编程(2) - sum.msic.Unsafe 二

    整理了几个曾经从网上记录sum.msic.Unsafe类的演示样例.供大家參考: package com.fish.unsafe; import java.io.File; import java.i ...