解题思路:递归嵌套,关键只是要看懂题目给出的公式到底是什么东西(给的数据真的很难猜啊)
注意事项: 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二级辅导-进制转换 (C语言代码)浏览:813 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:705 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:813 |
C语言训练-计算1977!* (C语言代码)浏览:899 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:684 |
C语言程序设计教程(第三版)课后习题8.9 (Java代码)浏览:1337 |
母牛的故事 (C语言代码)浏览:435 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:1007 |
简单的a+b (C语言代码)浏览:606 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:327 |