zoukankan      html  css  js  c++  java
  • 2017浙江工业大学-校赛决赛 竹之书

    Description

    由于某些原因菲莉丝拿到了贤者之石,所以好像变得很厉害了
    好像变得很厉害的菲莉丝想要炼成幻想乡,其中有一个原料是稗田一族对幻想乡历史的记录。现在菲莉丝拿到了一个被某只魔粘性精神体加密过的的卷轴。
    密文通过原文和一个正整数key加密形成,而key和密文又有一定关联。
    现给出密文,求key值

    已知密文s和key值关系如下
    已知密文s是一串正整数s1,s2,s3……sn,A为s中所有元素的和,B为s中所有元素的积,key为B mod A

    数据范围
    si,A在(0,1e17]范围内
    0<n<=100000

    Input

    第一行T表示数据组数
    接下来每组第一行一个n,代表s的长度
    接下来n行,每行一个正整数si

    Output

    每组一行,key值

    Sample Input

    2
    4
    1
    2
    3
    4
    6
    5
    6
    7
    8
    9
    9

    Sample Output

    4
    32
    解法:按照题意来,你会发现居然能过
     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int t;
     4 unsigned long long Mod(unsigned long long x,unsigned long long a,unsigned long long mod){
     5     unsigned long long ans=0;
     6     ans%=mod;
     7     while(a){
     8         if(a&1){
     9             ans=(ans+x)%mod;
    10         }
    11         ans%=mod;
    12         a>>=1;
    13         x=(x<<1)%mod;
    14     }
    15     return ans;
    16 }
    17 unsigned long long a[123456];
    18 int main(){
    19     scanf("%d",&t);
    20     while(t--){
    21         unsigned long long sum=0;
    22         int n;
    23         scanf("%d",&n);
    24         for(int i=1;i<=n;i++){
    25             scanf("%llud",&a[i]);
    26             sum+=a[i];
    27         }
    28         unsigned long long ans=1;
    29         for(int i=1;i<=n;i++){
    30             ans=Mod(ans,a[i],sum);
    31             ans%=sum;
    32         }
    33         cout<<ans<<endl;
    34     }
    35     return 0;
    36 }
  • 相关阅读:
    Python3 获取抖音无水印视频 2020年12月23日----lanyi原创
    javascript9分享到菜单,菜单在屏幕左侧的移出和收回
    javascript8图片刹车运动
    javascript7图片的淡入淡出
    javascript6鼠标拖拽图片
    javascript5每秒改变字体颜色的大小
    javascript4动态生成表格
    javascript3跟随鼠标的提示框
    javascript2选项卡
    同学,为什么Golang中不用this和self
  • 原文地址:https://www.cnblogs.com/yinghualuowu/p/7358788.html
Copyright © 2011-2022 走看看