藍橋杯 C約數倍數選卡片問題
極客小將2022-04-11-
問題描述 閑暇時,福爾摩斯和華生玩一個游戲: 在N張卡片上寫有N個整數。兩人輪流拿走一張卡片。要求下一個人拿的數字一定是前一個人拿的數字的約數或倍數。例如,某次福爾摩斯拿走的卡片上寫著數字“6”,則接下來華生可以拿的數字包括: 1,2,3, 6,12,18,24 .
問題描述
閑暇時,福爾摩斯和華生玩一個游戲:
在N張卡片上寫有N個整數。兩人輪流拿走一張卡片。要求下一個人拿的數字一定是前一個人拿的數字的約數或倍數。例如,某次福爾摩斯拿走的卡片上寫著數字“6”,則接下來華生可以拿的數字包括:
1,2,3, 6,12,18,24 ....
當輪到某一方拿卡片時,沒有滿足要求的卡片可選,則該方為輸方。
請你利用計算機的優勢計算一下,在已知所有卡片上的數字和可選哪些數字的條件下,怎樣選擇才能保證必勝!
當選多個數字都可以必勝時,輸出其中最小的數字。如果無論如何都會輸,則輸出-1。
輸入格式
輸入數據為2行。第一行是若干空格分開的整數(每個整數介于1~100間),表示當前剩余的所有卡片。
第二行也是若干空格分開的整數,表示可以選的數字。當然,第二行的數字必須完全包含在第一行的數字中。
輸出格式
程序則輸出必勝的招法!
樣例輸入
2 3 6
3 6
樣例輸出
3
樣例輸入
1 2 2 3 3 4 5
3 4 5
樣例輸出
4
