Submission #16730543
Source Code Expand
#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
#define endl '\n'
#define rep(i,n) for(int i=0;i<n;i++)
#define all(v) v.begin(),v.end()
#define F first
#define S second
#define debug1(a) cout<<#a<<" "<<(a)<<endl;
#define debug2(a,b) cout<<#a<<" "<<(a)<<" "<<#b<<" "<<(b)<<endl;
#define debug3(a,b,c) cout<<#a<<" "<<(a)<<" "<<#b<<" "<<(b)<<" "#c<<" "<<(c)<<endl;
typedef long double ld;
ll mod1 = 1e9 + 7;
long long mod(long long x) {
return ((x % mod1 + mod1) % mod1);
}
long long add(long long a, long long b) {
return mod(mod(a) + mod(b));
}
long long mul(long long a, long long b) {
return mod(mod(a) * mod(b));
}
long long minu(long long a, long long b) {
return mod(mod(a) - mod(b));
}
ll power(ll x, ll y, ll p)
{
ll res = 1; // Initialize result
x = x % p; // Update x if it is more than or
// equal to p
if (x == 0) return 0; // In case x is divisible by p;
while (y > 0)
{
// If y is odd, multiply x with result
if (y & 1)
res = (res * x) % p;
// y must be even now
y = y >> 1; // y = y/2
x = (x * x) % p;
}
return res;
}
void solve()
{
ll n;
cin >> n;
if (n == 1)
{
cout << 0 << endl;
return;
}
else if (n == 2)
{
cout << 2 << endl;
return;
}
ll ans = minu(add(power(10, n, mod1), power(8, n, mod1)), mul(2, power(9, n, mod1)));
cout << ans << endl;
}
int main()
{
//ios_base::sync_with_stdio(false);
//cin.tie(NULL);
int t;
t = 1;
while (t--)
{
solve();
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Ubiquity |
| User | EramallaAravind |
| Language | C++ (GCC 9.2.1) |
| Score | 300 |
| Code Size | 1529 Byte |
| Status | AC |
| Exec Time | 7 ms |
| Memory | 3640 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 300 / 300 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample00, sample01, sample02 |
| All | case03, case04, case05, case06, case07, case08, case09, case10, case11, case12, case13, case14, case15, case16, case17, case18, case19, sample00, sample01, sample02 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| case03 | AC | 7 ms | 3552 KiB |
| case04 | AC | 2 ms | 3532 KiB |
| case05 | AC | 2 ms | 3528 KiB |
| case06 | AC | 2 ms | 3568 KiB |
| case07 | AC | 2 ms | 3636 KiB |
| case08 | AC | 3 ms | 3640 KiB |
| case09 | AC | 2 ms | 3412 KiB |
| case10 | AC | 2 ms | 3508 KiB |
| case11 | AC | 3 ms | 3584 KiB |
| case12 | AC | 2 ms | 3576 KiB |
| case13 | AC | 2 ms | 3384 KiB |
| case14 | AC | 2 ms | 3384 KiB |
| case15 | AC | 2 ms | 3528 KiB |
| case16 | AC | 2 ms | 3528 KiB |
| case17 | AC | 2 ms | 3568 KiB |
| case18 | AC | 2 ms | 3556 KiB |
| case19 | AC | 7 ms | 3440 KiB |
| sample00 | AC | 2 ms | 3584 KiB |
| sample01 | AC | 3 ms | 3580 KiB |
| sample02 | AC | 2 ms | 3444 KiB |