2014ACM/ICPC亚洲区北京站

1001  A Curious Matt

求一段时间内的速度单位时间变化量,其实就是直接求出单位时间内的,如果某段时间能达到最大那么这段时间内必定有一个或一小段单位时间内速度变化是最大的即局部能达到最大,比较水就是格式上有点坑,谜之wa了好几发

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 #include <math.h>
 5 #include <algorithm>
 6 #include <iostream>
 7 typedef long long ll;
 8 using namespace std;
 9 
10 
11 struct Node
12 {
13     ll t,x;
14  }p[100005];
15  
16  int cmp(Node a,Node b)
17  {
18      return a.t<b.t;
19  }
20  
21  int main()
22  {
23      int cas,n,i;
24      scanf("%d",&cas);
25      for(i=1;i<=cas;i++)
26      {
27          scanf("%d",&n);
28          for(int j=0;j<n;j++)
29              scanf("%lld %lld",&p[j].t,&p[j].x);
30          sort(p,p+n,cmp);
31          
32          double max=abs(p[1].x-p[0].x)/(p[1].t-p[0].t);
33 
34          for(int j=1;j<n;j++)
35          {
36              if((abs(p[j].x-p[j-1].x)/(p[j].t-p[j-1].t))>max)
37                 max=1.0*abs(p[j].x-p[j-1].x)/(p[j].t-p[j-1].t); 
38          }
39         printf("Case #%d: %.2lf\n",i,max);
40     }
41      return 0;
42  }

 1011 K.Bro Sorting

一道比较水的题目,求出逆序数字的对数就行

 1 #include<cstdio>  
 2 #include<iostream>  
 3 #include<algorithm>
 4 #include<math.h> 
 5 #include<string.h>  
 6 #include<vector> 
 7 #include<queue>
 8 #include<iterator>
 9 #include<vector>
10 #include<set>
11 #define dinf 0x3f3f3f3f
12 typedef long long ll;
13 using namespace std;
14 #define SIZE 100000005
15 
16 
17 ll a[1000005];
18 
19 
20 
21 int main()
22 {
23     int n,cas,ans;
24     scanf("%d",&cas);
25     for(int k=1;k<=cas;k++)
26     {
27         scanf("%d",&n);
28         ans=0;
29         for(int i=0;i<n;i++)
30             scanf("%lld",&a[i]);
31         int min=a[n-1];
32         for(int i=n-2;i>=0;i--)
33         {
34             if(a[i]>min)
35                 ans++;
36             else 
37                 min=a[i];
38              
39          } 
40         printf("Case #%d: %lld\n",k,ans);
41     } 
42    
43     return 0;
44 }

 

posted @ 2016-10-18 15:30  pter  阅读(254)  评论(0编辑  收藏  举报