題目描述
雞國中有兩隻最喜歡打鳴的公雞 g1 和 g2,它們每一次打鳴都有乙個聲音的響度值。一天清晨,g1 開始先開始打鳴,響度值為 x,g2 聽到 g1 的打鳴後也開始打鳴,響度值為 y。g1 和 g2 很想把它們打鳴聲音的響度值調成一樣。所以它們進行了 k 次協商,每一次協商後就各自增加或減少一定的響度值再打鳴一次(打鳴的響度值不能小於 0)。g1 和 g2 生性遲鈍,它們不知道其實經過 s(s≤k)次協商後,打鳴聲音的響度值已經相同了。請程式設計幫 g1 和 g2 計算一下它們打鳴聲音的響度值相同時最少經過了幾次協商(即最小的 s)?
注意:如果 x 一開始就等於 y,則不需要協商。
輸入
輸入共 k+1 行。
第 1 行三個整數 x,y 和 k,分別表示 g1、g2 第一次打鳴時聲音的響度值,共進行了 k次協商並調整打鳴聲音的響度值。
接下來 k 行,每行包含 4 個整數 ai,xi,bi,yi,表示第 i 次協商 g1 增加(ai等於 1)或減少(ai等於-1)的響度值為 xi,g2 增加(bi等於 1)或減少(bi等於-1)的響度值 yi。
輸出
輸出 1 行乙個整數,表示至少經過多少次協商後 g1 和 g2 的打鳴響度值已經相同。如果經過 k 次協商後仍然無法相同,則輸出「-1」(不包含雙引號)。
樣例輸入
input1:
2 3 3
1 1 -1 0
-1 1 1 1
1 1 -1 1
input2:
2 3 4
1 2 -1 2
-1 1 1 1
-1 4 1 1
1 4 1 1
input3:
2 3 1
1 2 -1 2
樣例輸出
output1:
1
output2:
4
output3:
-1
資料範圍限制
提示
sample1:
在樣例 1 中,g1 和 g2 第 1 次打鳴的響度值分別為 2 和 3,不相同。第 1 次協商 g1 增加 1,g2 減少 0,響度值分別為 3 和 3,所以經過 1 次協商後它們兩個打鳴的響度值已經相同。經過 3 次協商時,它們的聲音也能調成一樣,但至少需要 1 次協商就可以了。
sample2:
在樣例 2 中,g1 和 g2 第 1 次打鳴的響度值分別為 2 和 3,不相同。第 1 次協商後打鳴的響度值分別為 4 和 1,第 2 次協商後打鳴的響度值分別為 3 和 2,第 3 次協商後打鳴的響度值分別為 0(不能小於 0)和 3,第 4 次協商後打鳴的響度值分別為 4 和 4, 所以經過 4 次協商後它們兩個打鳴的響度值相同。
sample3:
在樣例 3 中,g1 和 g2 第 1 次打鳴的響度值分別為 2 和 3,不相同。第 1 次協商 g1 增加 2,g2 減少 2,響度值分別為 4 和 1,所以經過 1 次協商後它們兩個打鳴的響度值仍然無法相同,則輸出「-1」。
解題思路
很明顯的暴力,每次把響度值按要求協調
在處理之前要特判a==
ba==b
a==b
#include
#include
using namespace std;
int a,b,k,i;
int main()
for(i=
1;i<=k;i++)if
(a==b)
printf
("%d"
,i);
else
printf
("-1");
}
2 2 2 選擇排序
include void main for i 0 i 6 i for m 0 m 6 m 以上程式正確輸出。錯誤程式 include void main for i 0 i 6 i index a i a i min a key index for m 0 m 6 m 原因分析 在這三步中 ind...
2 2 2 隨機事件
1.隨機實驗 對隨機事件的研究始於觀測,各種觀測手段統稱實驗。隨機實驗 對隨機現象的觀測 2.隨機實驗的結果 隨機實驗的每乙個結果都被稱為樣本,記為s,所有可能結果的集合稱為樣本空間,記為s。例1.1 點選數 s 可以是數 2 測量血型 s 也可以是陣列 3 彩票號碼 s 可以是屬性 4 連續7天觀...
redis安裝需要》2 2 2
gem install redis error error installing redis redis requires ruby version 2.2.2.查了查資料,centos7百勝庫中的紅寶石的版本支援到2.0.0,可寶石安裝redis的需要最低是2.2.2,自己編譯的紅寶石原始碼,再執...