Examen preguntas práctica básica Sine Dance

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.
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 }

 

 
 
 

Supongo que te gusta

Origin www.cnblogs.com/Aiahtwo/p/12741581.html
Recomendado
Clasificación