程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> poj 3663 Costume Party [簡單搜索]

poj 3663 Costume Party [簡單搜索]

編輯:C++入門知識

poj 3663 Costume Party [簡單搜索]


題目大意:給你兩個個數據s, n,下面輸入n組數據代表牛的距離,如果兩頭牛的之間距離和小於等於s 就算是一對, 求一共有多少對?

策略:直接遍歷,肯定TL, 先用一個數組保存比s小的,快排一下,最後搜索一下。

 

代碼:

 

#include
#include
#include
using namespace std;
int s[1000005];
int main()
{
	int n, m, i, j;
	while(scanf(%d%d, &n, &m) == 2){
		int a, k = 0;
		for(i = 0; i < n; i ++){
			scanf(%d, &a);
			if(a < m)
			s[k++] = a;
		}
		int ans = 0;
		int flag = 0;
		sort(s, s+k);
		for(i = 0; i < k; i ++){
			for(j = i+1; j< k; j ++){
				if(s[i]+s[j] <= m){
					++ans;
				}
				else{
					break;
				}
			}
		}
		printf(%d
, ans);
		
	}
	return 0;
}


 

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