Particle

競技プログラミングについての雑記

AOJ 0054: Sum of Nth decimal places

愚直に(10倍するだけで剰余を取らなかったり、double型を使ったりして)解こうとすると、精度が足りなかったり、オーバーフローするから、10倍しながら関係無い部分(整数部)を捨てていく。

int main(){
	int a,b,n;
	while(cin>>a>>b>>n){
		int ans = 0;
		a %= b;
		for(int i = 0; i < n; i++){
			a *= 10;
			ans += a/b;
			a %= b;
		}
		cout<<ans<<endl;
	}
	return 0;
}