1. Título
Enlace del título
http://lx.lanqiao.cn/problem.page?gpid=T62
Descripción del problema
Recientemente, FJ ha establecido un curso de análisis matemático para sus vacas y sabe que para aprender este curso, debe tener una buena función básica de funciones trigonométricas. Entonces él va a hacer un juego de "Sine Dance" con las vacas, para entretener y mejorar el poder de cómputo de las vacas.
Configuremos
An = sin (1 – sin (2 + sin (3 – sin (4 + ... sin (n)) ...)
Sn = (... (A1 + n) A2 + n-1) A3 + ... + 2) Un + 1
FJ quiere que las vacas calculen el valor de Sn. Por favor, ayude a FJ a imprimir la expresión completa de Sn, para que las vacas puedan resolver fácilmente el problema.
Configuremos
An = sin (1 – sin (2 + sin (3 – sin (4 + ... sin (n)) ...)
Sn = (... (A1 + n) A2 + n-1) A3 + ... + 2) Un + 1
FJ quiere que las vacas calculen el valor de Sn. Por favor, ayude a FJ a imprimir la expresión completa de Sn, para que las vacas puedan resolver fácilmente el problema.
Formato de entrada
Solo hay un número: N <201.
Formato de salida
Genere la expresión correspondiente Sn, que termina con un carácter de nueva línea. La salida no debe contener espacios adicionales o avances de línea o retornos de carro.
Entrada de muestra
3
Salida de muestra
((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1
2. Resolver
Idea: enumere las cadenas de acuerdo con las dos expresiones dadas en la pregunta
A [i] = "A" + "sin (" + "i" + "i 个)"
s se establece inicialmente en "n-1 '('"
s = "s" + "A [i]" + "+" + "n-i + 1" + "1 个)"
1 #include <bits / stdc ++. H> 2 usando el espacio de nombres std; 3 int main () { 4 int N; 5 char t; 6 cin >> N; 7 cadenas s = "" ; 8 cadena A = "", T = "", H = "" ; 9 para ( int i = 0; i <N-1; i ++ ) { 10 // s 初始 设为 "n-1 个 '('" 11 s + = '(' ; 12 } 13 14 para ( int i = 1 ; i <= N; A [i] = "A" + "sin (" + "i" + "i 个)" 16 T + = ')'; // T 是 ')' 的 叠加 体 17 A + = "sin (" ; 18 t = '0' + i; 19 A + = t; // A 是 A [i] 的 叠加 体 20 H = A + T; // H 表示 A [i] 21 22 // s = "s" + "H" + "+" + "n-i + 1" + "1 个)" 23 s + = H; 24 s + = '+' ; 25 t = '0' + (N-i + 1 ); 26 s + = t; 27 if (i! = N) s + = ')' ; 28 29 //Prepare la siguiente A [i] con el signo más y menos 30 si (i% 2 == 1) A + = '-' ; 31 más A + = '+' ; 32 } 33 34 cout << s << endl; 35 }