[Mảng 1 Chiều Cơ Bản]. Bài 60. Dãy số chia dư

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Nguồn bài:
28Tech
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho mảng A[] gồm N phần tử bạn hãy tính kết quả của biểu thức

S = (A[0]^0 + A[1]^1 + A[2]^2 + …. + A[N-1]^(N-1)) % 1000000007


Đầu vào

Dòng 1 là N : số phần tử trong mảng

Dòng 2 là N số viết cách nhau 1 dấu cách


Giới hạn

1≤N≤10^3

0≤A[i] ≤10^6


Đầu ra

In ra đáp án của bài toán


Ví dụ :

Input 01
3
2 1 5
Output 01
27
Input 02
16
2 2 4 8 4 8 8 4 7 2 5 0 8 2 6 7
Output 02
660967730

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    lythaison  đã bình luận lúc 25, Tháng 6, 2026, 2:42

    include <bits/stdc++.h>

    using namespace std; const long long chialaydu=1000000007; long long nhiphan(long long a, long long b){ long long c =1; while(b>0){ if(b%2==1){ c=(ca)%chialaydu; } a=(aa)%chialaydu; b/=2; } return c; } int main() { long long n; cin >> n; long long a[n]; for(int i=0;i<n;i++)cin >> a[i]; long long tong=0; for(int i=0;i<n;i++){ tong=(tong+nhiphan(a[i],i))%chialaydu; } cout << tong; return 0; } full ac nha mn

    • List item

  • 0
    Hoshino  đã bình luận lúc 5, Tháng 6, 2026, 1:27

    .


  • 1
    Hoshino  đã bình luận lúc 15, Tháng 5, 2026, 2:54

    include<bits/stdc++.h>

    using namespace std;

    define ll long long

    ll b[1123456],d1,d2,s1,s2,n,maxx=LLONGMIN,minn=LLONGMAX,minn2=LLONGMAX,x,k,m,sct=1000000007; ll cnt[1123456]; ll a[1123456]; ll ltdeu(ll a, ll b) { ll res=1; a%=sct; for(ll i=1; i<=b; i++) { res=(res*a)%sct; } return res; } ll ltxin(ll a, ll b) { ll res2 = 1; ll MOD = 1000000007; a %= MOD; while (b > 0) { if (b % 2 == 1) { res2 = (res2 * a) % MOD; } a = (a * a) % MOD; b /= 2; } return res2; } int main() { iosbase::syncwithstdio(false); cin.tie(nullptr); cin>>n; for(ll i=0; i<n; i++) { cin>>a[i]; } d1=1; for(ll i=0; i<n; i++) { s1=(s1+ltxin(a[i],i))%sct; } cout<<s1<<'\n'; return 0; } code full cho anh em do có 2 hàm lt cho anh em chọn nhé vậy là xong 60 bài mảng 1 chiều cơ bản rồi


  • 0
    pvt6_0023  đã bình luận lúc 28, Tháng 2, 2026, 3:13

    include <bits/stdc++.h>

    using namespace std;

    define ll unsigned long long

    ll lt(ll cs, ll sm, ll sc){ ll tich=1; for(ll i=0;i<sm;i++){ tich*=cs; tich%=sc; } return tich; } int main() { iosbase::syncwith_stdio(false); cin.tie(nullptr); ll n,s=0,temp=1e9 +7;cin>>n; vector<ll> v(n); for(ll &x:v)cin>>x; for(ll i=0;i<n;i++)s+=lt(v[i],i,temp); cout<<s%temp; return 0; }


  • 0
    kietne  đã bình luận lúc 29, Tháng 12, 2025, 14:36

    ĐÃ DONE 60 BÀI MẢNG 1 CHIỀU R NHA AE

    include <bits/stdc++.h>

    using namespace std; using ll = long long; const ll MOD = 1000000007LL;

    // modpowrec: tính base^exp % MOD bằng đệ quy (lũy thừa nhị phân) ll modpowrec(ll base, long long exp) { if (exp == 0) return 1 % MOD; ll half = modpowrec(base, exp / 2); ll res = (half * half) % MOD; if (exp % 2 == 1) res = (res * base) % MOD; return res; }

    int main() { ios::syncwithstdio(false); cin.tie(nullptr);

    int n;
    if (!(cin >> n))
        return 0;
    vector<ll> a(n);
    for (int i = 0; i < n; ++i)
        cin >> a[i];
    
    ll total = 0;
    for (int i = 0; i < n; ++i)
    {
        ll base = a[i] % MOD;
        if (base < 0)
            base += MOD;
        total = (total + mod_pow_rec(base, i)) % MOD;
    }
    cout << total << '\n';
    return 0;
    

    }



  • 0
    bennie15025_meow  đã bình luận lúc 19, Tháng 12, 2025, 15:13

    Code của mình AC 100%: https://onecompiler.com/cpp/4482vybyq