我想成為靈媒強者

發布時間: Nov. 26, 2022, 7:16 p.m.   最後更新時間: Sept. 15, 2023, 7:29 p.m.   時間限制: 1000ms   記憶體限制: 512M

平常無所事事的Meizz,身為一個平凡的高中生,過著平凡的路人甲生活

直到最近,他終於發現了他人生的方向:

螢幕擷取畫面 2022-11-26 181812.png

他發現他隨口說說、隨便猜的東西都能成真

其他人的私生活就先不舉例,像他最近世足賽就猜中了不少局

  • 因為私心喜歡日本而押日本贏
  • 因為大家都認為阿根廷會贏,看在賠率太低,所以跑去押沙烏地阿拉伯
  • 看到兩個不怎麼認識的國家PK,就隨手押平局
  • 因為哥斯大黎加名字聽起來超不吉利,感覺球就是會黎加出走不會乖乖進球門,所以押西班牙贏

總之,他靠著直覺和無厘頭的推理,深受大眾好評

螢幕擷取畫面 2022-11-26 181835.png

而現在,他又學會了一招。他可以輕易地推測出誰在說謊OAO

至於如何推測出來的,這攸關智慧財產權,畢竟他現在靠這個在吃飯的


總之他已成功幫助許多小妹妹遠離未來將成為渣男的小弟弟的欺負

畢竟幼稚園小弟弟最愛撒的謊言就是:「我以後要娶妳!」

儘管只是無心之言,卻已讓許多小妹妹小鹿亂撞、徹夜難眠、百思不得其解

這也是為什麼現在上了高中,女生憂鬱傾向大於男生的原因之一

充滿正義感的Meizz,決定從幼稚園階段就開始進行禍源斬除。


---------------------------------

廢話說了那麼多,就稍微解釋一下原理好了,不然你也沒辦法解題

總之現在有N個人,每人各說了一句話,他會先將每個人作編號,並且把每個人的語言轉換成:「我們之中至少有K個人說謊」,於是乎,他便能快速地看出誰說謊。

而現在身為靈媒接班者的你,雖然沒有靈媒體質,但你有強大的電腦幫你判斷!

看到了沒 發財的道路就在眼前><

輸入有兩行
第一行給你一個非負整數$n$,代表總共有$n$個人,$n$不超過$10^3$
第二行給你$n$個整數$k$,代表編號$i$($i$依序從$1到n$)的人說了「我們之中至少有$k$個人說謊」,$(1 \leq i,k \leq n)$且$i,k$各自皆不重複
並保證情況一定有解,畢竟靈媒不可能有解不出來的問題!

請輸出兩行
第一行輸出共有幾個人說謊
第二行輸出說謊的人的編號,由小到大排序,並以空格隔開,若沒有人說謊,請輸出0

複製範例
2
1 2
1
2

說不定可以用跟bool有關的資料結構搭配酷酷的運算子><

data structure brute force

自創