有趣的數
- 描述
-
把分數按下面的辦法排成一個數表。
1/1 1/2 1/3 1/4.....
2/1 2/2 2/3....
3/1 3/2 ....
4/1.....
.........我們以z字型方法給上表的每項編號。特定方法:第一項是1/1,然後是1/2、2/1、3/1、2/2、1/3、1/4、2/3……。編程輸入項號N(1<=N<=100000),輸出表中第N項。
- 輸入
- 第一行有一個整數m(0<m<=10),表示有m組測試數據;
隨後有m行,每行有一個整數N; - 輸出
- 輸出表中第N項
- 樣例輸入
-
4314712345
- 樣例輸出
-
2/12/41/459/99
- 來源
- 經典題目
- 上傳者
# include <stdio.h> int Ji(int n) { int m = 0; for (int i=0; i<=n; i++) m+=i; return m; } int main (void) { int m, N, n, num1, num2; scanf ("%d", &m); while (m--) { n = 1; scanf ("%d", &N); while(Ji(n)<N) n++; num1 = N-Ji(n-1); num2 = n+1-num1; if (n%2) printf ("%d/%d\n", num2,num1); else printf ("%d/%d\n", num1, num2); } return 0; } /*-------------- 4 3 2/1 14 2/4 7 1/4 12345 59/99 Press any key to continue... */