[Softeer][Lv2] 바이러스

Yunho Jung·2023년 11월 1일
0

Softeer

목록 보기
2/5

소스 코드

#include<iostream>
#define endl "\n"
#define DIV 1000000007

using namespace std;

typedef long long ll;

ll k; // 바이러스 수
ll p; // 증가율
int n; // 총 시간

void input() {
  cin >> k >> p >> n;
}

void solve() {
  while (n--) {
    k  = (k * p) % DIV;
  }

  cout << k << endl;
}

int main(int argc, char** argv) {
  input();

  solve();
  
  return 0;
}

해설

n번만큼 p배 해주기. 단, k가 10의 8승, p가 10의 8승으로 수가 매우 크므로 long long 타입을 사용해주고, 매 연산마다 1000000007 로 모드 연산 해주기.

0개의 댓글