2019華東交通校賽 H 誰在說謊(思維)

2021-09-29 17:01:03 字數 1403 閱讀 6084

題目描述

鄧志聰是一位非常聰明的小夥子,這次他在某個學校當班主任,他班上有n個學生,然而有些學生非常的討厭鄧志聰。一次考試結束後,鄧志聰想知道這些學生的考試情況,於是乙個乙個叫這些學生叫去辦公室問他們,但是有些學生並沒有講真話,第i個學生說:「有ai個人分數比我高,bi個人分數比我低。」鄧志聰想知道最少有幾個學生沒有說真話,你能幫助他嗎?(可能有相同的分數)

輸入描述:

第一行乙個整數n,接下來每行兩個整數,第i+1行兩個整數代表ai,bi。(1<=n<=100000,0<=ai,bi<=n)
輸出描述:

乙個整數,表示最少有幾個人在說謊。
輸入

3

1 12 2

0 2

1
題目要求最少的說謊人數,反向即求最多有多少人沒有說謊。

方法1:

對這些三元組按照r從小到大排序,對於拍完序的第i個元組,在

方法1:

#include using namespace std;

const int maxn = 1e5+10;

struct node

}c[maxn];

int n, a, b, l, r;

int f[maxn], p[maxn];

map, int> m;

int main()

else m[make_pair(l, r)]++;//統計區間出現的次數}}

num--;

sort(c+1,c+1+num);

for(int i = 1; i <= num; i++)

for(int i = 1; i <= num; i++)

printf("%d\n", n-f[num]);

return 0;

}

方法2:

#include using namespace std;

const int maxn = 1e5+10;

struct nodec[maxn];

vectorp[maxn];//p[i]中儲存(l,r)中r=i的所有l值

int n, a, b, l, r;

int f[maxn];

map, int> m;

int main()

}for(int i = 1; i <= n; i++)

}printf("%d\n", n-f[n]);

return 0;

}

2019華東交通大學ACM基地簡介

acm國際大學生程式設計競賽 英文全稱 acm international collegiate programming contest 簡稱acm icpc或icpc 是由國際計算機協會 acm 主辦的,一項旨在展示大學生創新能力 團隊精神和在壓力下編寫程式 分析和解決問題能力的年度競賽。經過40...

2019校賽總結

這是我第一次打的學校的比賽,大一時什麼都不懂錯過了新生賽和校賽 t t,大二時又不能打新生賽,直到這次。總的來說這次結果還可以接受吧。a了4題,做題太慢罰時多4題墊底,喜提簽到獎勵t shirt。簽到題很水,很快過了,不是一血,大佬手速太快了,b題卡了一會兒,主要原因是機器上的devc 不能單步除錯...

2019湘潭校賽題解

a 我真的沒鴿比賽。b 直接模擬就好。c a 3 192 1。同餘模定理得 a 192 a 192 a 192 192 1。那麼暴力0 192,看看有多少a滿足條件發現只有1。所以只要求l到r有多少個x 192 1就可以了。include define ll long long using name...