藍橋C Sine之舞 遞迴

2021-10-05 07:14:49 字數 1670 閱讀 5839

資源限制

時間限制:1.0s 記憶體限制:512.0mb

問題描述

最近fj為他的奶牛們開設了數學分析課,fj知道若要學好這門課,必須有乙個好的三角函式基本功。所以他準備和奶牛們做乙個「sine之舞」的遊戲,寓教於樂,提高奶牛們的計算能力。

不妨設an=sin(1–sin(2+sin(3–sin(4+…sin(n))…)

sn=(…(a1+n)a2+n-1)a3+…+2)an+1

fj想讓奶牛們計算sn的值,請你幫助fj列印出sn的完整表示式,以方便奶牛們做題。

輸入格式

僅有乙個數:n<201。

輸出格式

請輸出相應的表示式sn,以乙個換行符結束。輸出中不得含有多餘的空格或換行、回車符。

樣例輸入

3樣例輸出

((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1

an=sin(1–sin(2+sin(3–sin(4+…sin(n))…)

sn=1+an(2+…+a3(n-1+a2(a1+n))…)

#include

#include

using

namespace std;

string a[

200+1]

;string dsp

(int x,

int end)

;int n;

string dsp_sum

(int x,

int end)

;int

main()

string e=

dsp_sum(1

,n);

cout

}string dsp_sum

(int x,

int end)

//sn x代表數字 end代表a的下標

//e=a[n]+數字

//如s2=(a[1]+2)a[2]+1

string e=a[end]

+"+"

;//a[end]代表aend

e.insert

(e.end()

,x+'0');

//x代表sn中的數字

return

"("+

dsp_sum

(x,end-1)

+")"

+e;}

string dsp

(int x,

int end)

//an x代表數字 end代表n即輸入的值

//e='sin('+x+加或減

string e=

"sin("

; e.

insert

(e.end()

,x+'0');

if(x%2==

1)e.

insert

(e.end()

,'-');

else

e.insert

(e.end()

,'+');

//如a2=sin(1-sin(2)) 所以為e+dsp()+")" e+")"='sin('+x+"+/-"+')'

return e+

dsp(x+

1,end)

+")"

;}

藍橋杯 基礎練習 Sine之舞 遞迴

時間限制 1.0s 記憶體限制 512.0mb 問題描述 最近fj為他的奶牛們開設了數學分析課,fj知道若要學好這門課,必須有乙個好的三角函式基本功。所以他準備和奶牛們做乙個 sine之舞 的遊戲,寓教於樂,提高奶牛們的計算能力。不妨設an sin 1 sin 2 sin 3 sin 4 sin n...

Sine之舞(遞迴)

基礎練習 sine之舞 時間限制 1.0s 記憶體限制 512.0mb 問題描述 最近fj為他的奶牛們開設了數學分析課,fj知道若要學好這門課,必須有乙個好的三角函式基本功。所以他準備和奶牛們做乙個 sine之舞 的遊戲,寓教於樂,提高奶牛們的計算能力。不妨設an sin 1 sin 2 sin 3...

藍橋杯 試題 基礎練習 Sine之舞(遞迴)

問題描述 最近fj為他的奶牛們開設了數學分析課,fj知道若要學好這門課,必須有乙個好的三角函式基本功。所以他準備和奶牛們做乙個 sine之舞 的遊戲,寓教於樂,提高奶牛們的計算能力。不妨設an sin 1 sin 2 sin 3 sin 4 sin n sn a1 n a2 n 1 a3 2 an ...