程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> OpenJudge百煉習題解答(C++)--題4072:判斷多個點是否在同一直線

OpenJudge百煉習題解答(C++)--題4072:判斷多個點是否在同一直線

編輯:C++入門知識

OpenJudge百煉習題解答(C++)--題4072:判斷多個點是否在同一直線


題:

總時間限制:
1000ms
內存限制:
65536kB
描述

有N(1<=n<=100)< span="">個互不重合的點,並給出它們的坐標(xi,yi),問這些點是否在同一直線上。

輸入
第一行是測試的組數T(1<=T<=100),其後是T組數據,每組數據第一行是該組數據點的數量N,後面跟著N行,每行代表一點的坐標,由兩個數字構成,這兩個數字之間由空格隔開。
輸出
有T行,每行對應輸入的一組數據,如果該組數據中的點在同一直線上,則該行輸出True,否則輸出False。
樣例輸入
1
3
0 0
2 2
1 1
樣例輸出
True

解:

#include<iostream>
#include<stdio.h>
using namespace std;

int main()
{
	
	int T;
	cin>>T;
	int True[T];
	double a[T][1000];
	double b[T][1000];
	int c[T];
	for(int i=0;i<t;i&#43;&#43;) cin="">>c[i];
		for(int j=0;j<c[i];j&#43;&#43;) cin="">>a[i][j]>>b[i][j];
		}
		
		
	}

for(int i=0;i<t;i&#43;&#43;) int="" h="1;h<c[i];h++)">2&&(b[i][1]-b[i][0])*(a[i][h]-a[i][0])!=(b[i][h]-b[i][0])*(a[i][1]-a[i][0])){
			
			True[i]=0;
		//	cout<<a[i][0]*b[i][h]<<"and"<<a[i][h]*b[i][0]<<endl; else="" return="" pre=""><p>
</p>
   
</a[i][0]*b[i][h]<<"and"<<a[i][h]*b[i][0]<<endl;></t;i&#43;&#43;)></c[i];j&#43;&#43;)></t;i&#43;&#43;)></stdio.h></iostream>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved