• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
HaibaraAi
博客园    首页    新随笔    联系   管理    订阅  订阅

Uva 11078 Open Credit System

Problem E Open Credit

In an open credit system, the students can choose any course they like, but there is a problem. Some of the students are more senior than other students. The professor of such a course has found quite a number of such students who came from senior classes (as if they came to attend the pre requisite course after passing an advanced course). But he wants to do justice to the new students. So, he is going to take a placement test (basically an IQ test) to assess the level of difference among the students. He wants to know the maximum amount of score that a senior student gets more than any junior student. For example, if a senior student gets 80 and a junior student gets 70, then this amount is 10. Be careful that we don't want the absolute value. Help the professor to figure out a solution.

Input Input consists of a number of test cases T (less than 20). Each case starts with an integer n which is the number of students in the course. This value can be as large as 100,000 and as low as 2. Next n lines contain n integers where the i'th integer is the score of the i'th student. All these integers have absolute values less than 150000. If i < j, then i'th student is senior to the j'th student.

Output For each test case, output the desired number in a new line. Follow the format shown in sample input-output section.

Sample Input          Output for Sample Input

3 
2 
100 
20 
4 
4 
3 
2 
1
4
1
2
3
4
 

80

3

-1   


Problemsetter: Mohammad Sajjad Hossain

Special Thanks: Shahriar Manzoor

 1 #pragma comment(linker,"/STACK:102400000,102400000")
 2 #include <cstdio>
 3 #include <vector>
 4 #include <cmath>
 5 #include <queue>
 6 #include <cstring>
 7 #include <iostream>
 8 #include <algorithm>
 9 using namespace std;
10 #define INF 0x7fffffff
11 #define mod 1000000007
12 #define ll long long
13 #define maxn 105
14 #define pi acos(-1.0)
15 //const int maxk = 10 + 1, inf = ~0U >> 2;
16 int n, m, ans;
17 int a[maxn];
18 
19 int main(){
20     int t;
21     scanf("%d", &t);
22     while (t--){
23         scanf("%d", &n);
24         int x, res = -INF/2; ans = -INF;
25         for (int i = 0; i < n; i++){
26             scanf("%d", &x);
27             ans = max(ans, res - x);
28             res = max(res, x);
29         }
30         printf("%d\n", ans);
31     }
32     return 0;
33 }
View Code
posted @ 2013-12-27 16:52  HaibaraAi  阅读(86)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3