Rylah's Study & Daily Life

[Softeer/C++] Level2 . 바이러스 본문

Softeer

[Softeer/C++] Level2 . 바이러스

Rylah 2022. 6. 10. 13:54

https://softeer.ai/practice/info.do?eventIdx=1&psProblemId=407

 

Softeer

연습문제를 담을 Set을 선택해주세요. 취소 확인

softeer.ai

제한시간 : C/C++(1초), Java/Python/JS(2초) | 메모리 제한 : 256MB

 

바이러스가 숙주의 몸속에서 1초당 P배씩 증가한다. 처음에 바이러스 K마리가 있었다면 N초 후에는 총 몇 마리의 바이러스로 불어날까? N초 동안 죽는 바이러스는 없다고 가정한다.
입력형식
첫 번째 줄에 처음 바이러스의 수 K, 증가율 P, 총 시간 N(초)이 주어진다.

입력은 다음 조건을 만족한다.

   1 ≤ K ≤ 108 인 정수
   1 ≤ P ≤ 108 인 정수
   1 ≤ N ≤ 106 인 정수
출력형식
최종 바이러스 개수를 1000000007로 나눈 나머지를 출력하라.
입력예제
2 3 2
출력예제
18

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <bits/stdc++.h>
using namespace std;
 
int main(void)
{
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
 
    long long K, P, N;
    cin >> K >> P >> N;
 
    long long res = K;
 
    for (int i = 0; i < N; i++)
    {
        res *= P;
        res %= 1000000007;
    }
 
    cout << res << "\n";
 
 
 
    return 0;
}
cs