[R17A]誰在裝弱
// [R17A]誰在裝弱.cpp : 此文件包含 "main" 函數(shù)。程序執(zhí)行將在此處開始并結(jié)束。
//
/*
題目地址:
https://bs.daimayuan.top/p/97
題目名稱:
[R17A]誰在裝弱
題目描述:
有 n 個同學,將他們按分數(shù)從高到低排列,排在第 i 名的同學分數(shù)為 a_i。滿分為 1000000。
同學們按照排名報分數(shù),排在第 i 名的同學報的分數(shù)為 b_i。
已知其中有恰好一個同學裝弱,他將自己的分數(shù)少報了 10 分,其余同學報的分數(shù)都是真實分數(shù),且對于 2≤i≤n 有 b_{i-1}≥b_i。
求有多少個同學可能是裝弱的那個同學。
輸入格式:
第一行包含一個整數(shù) n,表示同學的數(shù)量。
第二行包含 n 個整數(shù) b_i,分別表示每個同學自己報的分數(shù)。數(shù)據(jù)保證對于 2≤i≤n 有 b_{i-1}≥b_i。
輸出格式:
輸出一個整數(shù)表示可能裝弱的同學的數(shù)量。
數(shù)據(jù)范圍:
對于 100% 的數(shù)據(jù),1≤n≤10^5,1≤b_i≤10^6。數(shù)據(jù)保證對于 2≤i≤n 有 b_{i-1}≥b_i。
樣例輸入:
5
999991 999982 20 10 10
樣例輸出:
2
樣例解釋:
排在第 1 名的同學不可能是裝弱的那個同學,因為如果他是裝弱的那個同學,那么他的真實分數(shù)為 1000001,超過了滿分。
排在第 2 名的同學不可能是裝弱的那個同學,因為如果他是裝弱的那個同學,那么他的真實分數(shù)為 999992,超過了第 1 名的分數(shù)。
如果排在第 3 名的同學裝弱,那么同學們的真實分數(shù)為:{999991,999982,30,10,10}。
如果排在第 4 名的同學裝弱,那么同學們的真實分數(shù)為:{999991,999982,20,20,10}。
排在第 5 名的同學不可能是裝弱的那個同學,因為如果他是裝弱的那個同學,那么他的真實分數(shù)為 20,超過了第 4 名的分數(shù)。
樣例輸入:
5
999990 100 90 80 1
樣例輸出:
5
*/
#include <iostream>
using namespace std;
const int N = 100010;
int a[N];
int n;
int main()
{
cin >> n; int ans = 0;
for(int i= 0; i < n; i++)
{
cin >> a[i];
if (i == 0) {
if (a[i] + 10 > 1000000) { ans++; }
}
else {
if(a[i] + 10 > a[i - 1] || a[i]+10> 1000000) {
ans++;
}
}
}
cout << n-ans << endl;
return 0;
}
作 者: itdef
歡迎轉(zhuǎn)帖 請保持文本完整并注明出處
技術(shù)博客 http://www.rzrgm.cn/itdef/
B站算法視頻題解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
歡迎c c++ 算法愛好者 windows驅(qū)動愛好者 服務(wù)器程序員溝通交流
如果覺得不錯,歡迎點贊,你的鼓勵就是我的動力
歡迎轉(zhuǎn)帖 請保持文本完整并注明出處
技術(shù)博客 http://www.rzrgm.cn/itdef/
B站算法視頻題解
https://space.bilibili.com/18508846
qq 151435887
gitee https://gitee.com/def/
歡迎c c++ 算法愛好者 windows驅(qū)動愛好者 服務(wù)器程序員溝通交流
如果覺得不錯,歡迎點贊,你的鼓勵就是我的動力
浙公網(wǎng)安備 33010602011771號