ぱーぽーの競プロ記

競技プログラミングに関することを書きます。

AOJ 0240 Interest Rates

問題文はこちら↓
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0240


・概要
金利に関する問題です。
問題文が日本語なので省略。


・解法
やるだけ問題です。
複利の計算では pow を使うとよいでしょう。


ソースコード

#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;

#define rep(i,n) for(int i = 0 ; i < (int)(n) ; i++)

int main(){
   int n;
   while(cin >> n){
      if(n==0)break;

      int y;
      cin >> y;
      
      int id = 0;
      double interest = 0;
      rep(i,n){
	 int b,t,r;
	 cin >> b >> r >> t;
	 double tmp = 0;
	 if(t==1)tmp = 1 + y*r/100.0;
	 if(t==2)tmp = pow((1+r/100.0),y);
	 if(interest < tmp){
	    interest = tmp;
	    id = b;
	 }
      }
      cout << id << endl;
   }
   return 0;
}