解题思路:递归嵌套,关键只是要看懂题目给出的公式到底是什么东西(给的数据真的很难猜啊)
注意事项: A1= sin(1)
A2 = sin(1-sin(2))
A3 = sin(1-sin(2-sin(3)))
S1 = A1 + 1
S2 = (A1 + 2)A2 + 1
S3 = ((A1 + 3)A2 +2)A3 +1
以此类推套出An和Sn就行
参考代码:
#include<bits/stdc++.h> using namespace std; string An=""; string Sn=""; int N; map<int,string>An_; string getAn(int n,int i){ if(n==1) return "sin("+to_string(i)+")"; if((i-n)&1) An = "sin("+to_string(i-n+1)+"+"+getAn(n-1,i)+")"; else An = "sin("+to_string(i-n+1)+"-"+getAn(n-1,i)+")"; return An; } string getSn(int n,int i){ if(n==1) return An_[1]+"+"+to_string(i); Sn = "("+getSn(n-1,i)+")"+An_[n]+"+"+to_string(i-n+1); return Sn; } main(){ cin>>N; for(int i=1;i<=N;i++){ An_[i] = getAn(i,i); //cout<<An_[i]<<endl; } cout<<getSn(N,N)<<endl; }
0.0分
0 人评分
川哥的吩咐 (C++代码)浏览:1009 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:629 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:424 |
蛇行矩阵 (C语言代码)浏览:744 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:855 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:469 |
A+B for Input-Output Practice (VII) (C语言代码)浏览:522 |
淘淘的名单 (C语言代码)浏览:1225 |
数列问题 (C语言代码)浏览:1020 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:575 |