藍橋杯 帶分數

2021-10-19 06:53:58 字數 1170 閱讀 4468

題目描述

100 可以表示為帶分數的形式:100=3+69258/714

還可以表示為:100=82+3546/197

注意特徵:帶分數中,數字 1∼9

分別出現且只出現一次(不包含 0)。

類似這樣的帶分數,100有 11 種表示法。

輸入格式

乙個正整數。

輸出格式

輸出輸入數字用數碼 1∼9 不重複不遺漏地組成帶分數表示的全部種數。

資料範圍

1≤n<10^6

輸入樣例1

100
輸出樣例1
11
輸入樣例2
105
輸出樣例2
6
題目思路

做法一:暴力列舉每一種數字組合,將數字組合列舉分成三個數

#include#include#include#includeusing namespace std;

int n,ways[10],cnt = 0;

int a,b,c;

bool used[10];

int fun(int st,int ed)

return r;

}void dfs(int u)

}return ;

}for(int i=1;i<=9;i++)

}}int main()

做法二:直接對a進行列舉,然後對c進行列舉

#include #include #include #include using namespace std;

const int n = 10;

int n;

bool st[n], backup[n];

int ans;

bool check(int a, int c)

for (int i = 1; i <= 9; i ++ )

if (!backup[i])

return false;

return true;

}void dfs_c(int u, int a, int c)

}void dfs_a(int u, int a)

}int main()

藍橋杯 帶分數

問題描述 100 可以表示為帶分數的形式 100 3 69258 714。還可以表示為 100 82 3546 197。注意特徵 帶分數中,數字1 9分別出現且只出現一次 不包含0 類似這樣的帶分數,100 有 11 種表示法。輸入格式 從標準輸入讀入乙個正整數n n 1000 1000 輸出格式 ...

藍橋杯 帶分數

問題描述 100 可以表示為帶分數的形式 100 3 69258 714。還可以表示為 100 82 3546 197。注意特徵 帶分數中,數字1 9分別出現且只出現一次 不包含0 類似這樣的帶分數,100 有 11 種表示法。輸入格式 從標準輸入讀入乙個正整數n n 1000 1000 輸出格式 ...

藍橋杯 帶分數

100 可以表示為帶分數的形式 100 3 69258 714 還可以表示為 100 82 3546 197 注意特徵 帶分數中,數字1 9分別出現且只出現一次 不包含0 類似這樣的帶分數,100 有 11 種表示法。題目要求 從標準輸入讀入乙個正整數n n 1000 1000 程式輸出該數字用數碼...