2019NC # 1

ССЫЛКА НА САЙТ

B Интеграция

Значение вопросов:

Учитывая $ a_1, a_2, ..., a_n $, вычисленная $$ \ гидроразрыва {1} {π} \ int_ {0} ^ {\ infty} \ гидроразрыва {1} {\ прод \ limits_ {я = 1} ^ {п} (a_i ^ 2 + х ^ 2)} дх $$ ответить на (1E9 + 7) по модулю значения.

Идеи:

Расщепление поездки к и подход

Вы можете получить

$$ \ гидроразрыва {1} {2} \ sum_ {= 1} ^ п \ четырехъядерных \ гидроразрыва {1} {\ prod_ {J = 1, J \ пе я} ^ п \ четырехъядерных a_j ^ 2 - a_i ^ 2 } \ четырехъядерных \ гидроразрыва {1} {a_i} $$

Справка: https://www.cnblogs.com/Dillonh/p/11209476.html

 

#include <iostream> 
#include <вектор> 
#include <очереди>
 с использованием  пространства имен зЬй;
#define пб push_back
 #define фи первой
 #define себе второй
 #define отладки (х) сегг << # х << ": =" << х << епсИ;
#define ошибка сегг << "-----------------------" << епсИ;
#define ЗА (а, б, в) для (Int а = Ь; а <= С; ++ а) 

ЬурейеЕ длинные  длинные LL; 
ЬурейеЕ длинный  двойной л.д.; 
ЬурейиЙ пар < INT , INT > PII;ФАПЧ; 


Шаблон < класс Т> недействительными _R (Т & х) {CIN >> х; }
 Недействительными _R ( INT & х) {зсапЕ ( " % d " , & х); }
 Пустота _R (LL & х) {зсапЕ ( " % LLD " , & х); }
 Недействительными _R ( двойной & х) {зсапЕ ( " % LF " , & х); }
 Недействительными _R ( символ & х) {зсапЕ ( " % С " , & х);
" , Х);}
 недействительным R () {} 
шаблон < класс Т, класс ... U> аннулируются R (T & головки, U & ... хвост) {_R (головка), R (хвост ...); } 


шаблон <Ьурепате Т> 
инлайн Т чтения (T & х) { 
    х = 0 ; INT е = 0 ; символ ч = GetChar ();
     в то время (ч < ' 0 ' || ч> ' 9 ' ) F | = ( ч == ' - ' ), ч = GetChar ();
     в то время (ч> =' 0 ' && ч <= ' 9 ' ) х = х * 10 + CH- ' 0 ' , ч = GetChar ();
    вернуться х = п - х: х; 
} 

Const  INT инф = 0x3f3f3f3f ; 

Const  INT мод = 1e9 + 7 ; 

/ * ********* *********** Showtime * / 
            Const  INT maxn = 1e3 + 9 ;
            INT A [maxn]; 
            LL КСМ (LL а, б LL) { 
                LL разрешением = 1 ;
                в то время как(б> 0 ) {
                     если (б & 1 ) = Рез Рез * а% по модулю; = а * а% по модулю; 
                    б = B >> 1 ; 
                } 
                Вернуть Рез; 
            } 
INT основных () {
             INT п;  
            в то время как (~ зсапЕ ( " % d " , & п)) {
                 для ( INT I = 1 ; я <= п; я ++) зсапЕ ( " % d " , & [I]);
                LL сумма= 0 ;
                для ( INT I = 1 ; г <= п; я ++ ) { 

                    LL TMP = 1 ;
                    для ( Int J = 1 , J <= N; j ++ ) {
                         если (я == J) продолжить ; 
                        LL с = (1LL * а [J] * а [J]% мод - 1LL * а [я] * а [я]% Mod + мод)% по модулю; 
                        TMP = TMP * КСМ (с, mod - 2 )% по модулю; 
                    } 
                    TMP= TMP * КСМ (а [I], mod - 2 )% по модулю; 
                    сумма = (сумма + TMP)% по модулю; 
                } 
                Сумма = сумма * КСМ ( 2 , mod - 2 )% по модулю; 
                Е ( " % LLD \ п " , сумма); 
            } 
            Возвращает  0 ; 
}
Просмотр кода

 

рекомендация

отwww.cnblogs.com/ckxkexing/p/11210441.html