201703 HNSDFZ集訓 R1T1 B君的教育

來源:互聯網
上載者:User
Description

B 君最近聽說了一個很驚人的性質,設 p=1+i p=1+i,對於每個高斯整數
x+yi x + yi,我們都可以找到一個非負整數集合S 滿足 ∑k∈Spk=x+yi() \sum _{k∈S}{p^k} = x+yi ()
而你需要做的,就是在輸入x 和y 的情況下,輸出集合S。
如果你看不懂上面的題目,我們形式化的給出如下定義。
就是對於一個複數(Complex Number),如果他的實部和虛部都是整數,我們稱之為高斯整數。
S 集合中不能有同樣的元素,每個元素必須是非負整數。

Input

一行兩個整數x,y。 Output

每行一個整數,從小到大輸出,表示集合S。 Sample Input

2 0 Sample Output

2
3 Hint

對於100% 的資料,滿足 |x|,|y|<=1018 |x|,|y| 。
對於50% 的資料,滿足y = 0。
對於50% 的資料,滿足 |x|,|y|<=102 |x|,|y| 。
以上兩部分50% 是相互獨立的。 題解

通過將 pk p^k打表出來,可以發現一個奧妙重重的規律: pn=−2(pn−1+pn−2) p^n = -2(p^{n-1}+p^{n-2})
證明很簡單:
−2(pn−1+pn−2)====−2[pn−2×(p+1)]pn−2×(−2i)pn−2×p2pn

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.