首先,根據資料範圍,打暴力是不能過的。此時,我們要想出另外一種方法。
首先判斷加了多少個 \(a\),然後判斷減了了多少個 \(b\),此時的答案就是 \(suma * a - sumb * b\)。其中 \(suma\) 表示加 \(a\) 的個數,\(sumb\) 表示減 \(b\) 的個數。
然後又分為兩種情況:
然後帶進公式算即可,記得開長整型。
用上面的方法有點不好,就是如果 \(a\) 或 \(k\) 很大的話,那麼算 \(suma * a\) 的時候可能就會直接超長整型,但是結果不會超長整型。
而解法 \(2\) 能完美解決這個問題。
把 \(a - b\) 看成一組,有兩種情況:
此時我們算的是 \((a - b) * (k / 2)\),而題目絕不會讓這個結果超過長整型,所以可以解決這個問題,就跟邊加邊 \(mod\) 的方法意思一樣。
公式都已經擺在上面了,**還是給一下吧,我這裡用的是解法 \(2\):
#includeusing namespace std;
int t;
int main()
else
} return 0;
}
CF328解題報告
a題 iq test 很水的題,就是給出數列的前四項,判斷出是等比還是等差。求下一項。code include using namespace std int main else cout 42 endl return 0 b題 sheldon and ice pieces 題意 有一排卡片,每張卡...
0712CF解題報告
a.free cash 題目大意,輸入第一行輸入n,然後輸入n行,每行輸入兩個數h 和 m 要求把出現次數最多的h和m的次數輸出。思路 此題運用雜湊法,先令乙個數tmp h 100 m 然後建立乙個陣列vis 2505 因為h 24 m 60 所以tmp 2505 最後用vis tmp 來統計次數,...
cf1199解題報告
目錄發一波水題。模擬 include define ll long long using namespace std const int 1e6 7 int n,x,y,a int main return 0 小學幾何題。輸出lf格式不對錯了幾發 include define ll long lon...