暴力 模擬 trapped

2021-09-28 20:29:01 字數 1465 閱讀 9982

題目描述

fj 剛剛收到了一批n(1

n4000

)n(1n 4000)

n(1n40

00) 堆的甘草。他把它們放在一條通向穀倉的路上的多個地方。不幸的是,他完全忘記了bessie 在沿著這條路上啃食牧草,她有可能現在被困在了這些甘草堆裡了!

每堆牧草j

jj有乙個大小s

js_j

sj​以及乙個獨特的在一維道路上的位置p

jp_j

pj​。bessie 從某乙個沒有甘草的位置開始,並可以在路上自由行走,甚至可以到達有甘草堆的位置,不過她不能越過這個位置。有乙個例外;如果她以同樣的方向跑d

dd個單位的長度,她可以積累足夠的速度,衝破並且永久清除任何大小嚴格小於d

dd 的乾草堆。當然,當做了這個動作之後,她就有更大的移動空間,可以使她對其它甘草堆發起一次奔跑,並永久地清除他們。

bessie 衝向自由的條件是她最終可以衝破最左端或最右端的甘草堆。請計算乙個總空間,從這些空間裡的點出發將使bessie 無法最終衝向自由。例如,如果bessie 從1 與5 號乾草堆之間的位置出發,她將不能衝破乾草堆;那麼這一段的空間就是4.

輸入

第一行輸入包含n

nn。接下來的n

nn行每行描述乙個乾草堆,兩個整數,乙個大小,乙個位置,範圍都是1..109

1..10^9

1..109

輸出

列印乙個整數,bessie 不能逃脫的空間的總面積

樣例輸入5

8 11 4

8 87 15

4 20

樣例輸出

資料範圍限制

• 對於36

3636

%的資料,n

<

=400

n <= 400

n<=4

00。思路

考試的時候看錯題目,但是資料太水,過了26.7分。

這題非常暴力,列舉l,r為左和右,然後「橫衝」,能撞的都撞了。最後發現沒有撞出去,困住了,就累加答案。

#include

#include

#include

using namespace std;

struct dt

a[4100];

int n,gun;

bool cmp

(const

dt&k,

const

dt&l)

int main()

if(l>=

1&&r<=n)gun+=a[i+1]

.x-a[i]

.x;//沒撞出去,就把距離加進答案裡

}printf

("%d"

,gun)

;}

模擬 暴力 COCI 排序

mirko現在有 n個數,這些數都不大於c。他要按照這些數出現的頻率來排序,使得出現頻率較高的數排前面,如果兩個數出現的頻率相等,則先出現的排在前面。請你幫助他。輸入 第一行包含2個整數,n 1 n 1000 c 1 c 1000 000 000 接下來一行包含n個數,每個數不大於c。輸出 僅有一行...

無題(暴力模擬 技巧)

簡單題 description 給出乙個長度為n的數列,求最少刪除幾個數可以讓剩下的數中 最大值 最小值 m input 第一行輸入兩個數n,m 1 n 100,0 m 100 第二行有n個數 0 xi 100 ps 本題為多組輸入 output 輸出所求答案 sample input 1 3 1 ...

暴力模擬玩家行為

假設,玩家需要1.1元參加一場3元賽,地主贏得3,農民贏的1.5 import numpy as np import random sever net 儲存服務費序列 games number儲存遊戲次數序列 gamer int 使用者初始金額 games number sever net for ...