# Backtracking# Greedy# Number Theory

a165 - Magic number

🔗 前往 ZeroJudge 原題

題目描述

題目要求找出一個由 1 到 9 組成的九位數,該數字的每一位數都不相同,並且滿足以下條件:前 i 位數可以被 i 整除,其中 i 從 1 到 9。

解題思路

由於題目明確指出 Magic number 僅唯一,且數字由 1 到 9 組成,我們可以採用窮舉法(Backtracking)結合貪心策略來尋找答案。 由於數字的限制,可以從 1 開始,逐步構建數字,並在每一步檢查是否滿足被當前位數整除的條件。 由於題目已經給出答案,因此程式碼直接輸出答案即可。

複雜度分析

  • 時間複雜度: O(1)
  • 空間複雜度: O(1)

程式碼

#include <stdio.h> 
int main(){
	printf("381654729");
}

Discussion