ACM 水题一道

用C/C++我的算法超时了TimeLimit:1000ms,MemoryLimit:32768KBProblemdescription寒假将至,老师们想到海南去度过假期。... 用C/C++ 我的算法超时了 Time Limit: 1000ms, Memory Limit:32768KB
Problem description
寒假将至,老师们想到海南去度过假期。出发前,需要先预定旅馆。他们从网上下载了旅馆的资料,希望选到称心的旅馆M——既便宜,离海边又近:
1. 如果有旅馆比M还近海边,那么就一定比M贵。
2。 如果有旅馆比M还便宜,那么就一定比M离海边远。
Input
有多组测试数据,每组测试数据第一行是一个整数N(1 ≤ N ≤ 10000),表示旅馆的数目。接下来N行是旅馆的资料,每行两个整数D和C(1 ≤ D, C ≤ 10000). D代表旅馆到海边的距离, C代表旅馆的房费。你可以肯定没有两家旅馆有(都)相同的D和C.测试数据 N = 0 表示输入结束,不需要处理。
Output
对于每组测试数据,输出一行,包含一个整数,表示可选的称心的旅馆的数目。
Sample Input
5
300 100
100 300
400 200
200 400
100 500
0

Sample Output
2

我的思路:从第一个旅馆开始,如果找到比它离海边近且便宜的,该旅馆不是称心的,找不到则是的。
代码:
#include<iostream>
using namespace std;
const int M=10000;
int main()
{
int n,sum,d[M],c[M],i,j;
while(cin>>n&&n)
{
for(i=0;i<n;i++)
cin>>d[i]>>c[i];
sum=0;
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if((d[j]<=d[i]&&c[j]<c[i])||(d[j]<d[i]&&c[j]<=c[i]))
break;
}
if(j==n)
sum++;
}
cout<<sum<<endl;
}
return 0;
}

这算法超时了
展开
 我来答
wandi1986
2013-03-05 · TA获得超过3007个赞
知道大有可为答主
回答量:1.2万
采纳率:0%
帮助的人:3358万
展开全部
假设A,B,X已经进入。
/ /算法不考虑的准确性失踪
(> BX)
- = BX
INT I = 0;
bool标志; BR />(1)
{
(X /(2 ^ I))* B>)
{+ +;继续;}
(X /(2 ^ I-1)* B <)
{标志= FALSE;休息;}
-= X /(2 ^ i)条)* B;
(一== 0)
{标志= TRUE;休息;}
}
(标志)法院<<“\ n”;
其他法院<<“无\ n “;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华芯测试
2024-09-01 广告
电学测试台是深圳市华芯测试科技有限公司的核心设备之一,它集成了高精度测量仪器与自动化控制系统,专为半导体芯片、电子元件及模块的电性能检测而设计。该测试台能够迅速、准确地完成电压、电流、电阻、电容及频率等关键参数的测试,确保产品质量符合行业标... 点击进入详情页
本回答由华芯测试提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式