Volume 0 / 0004->0008

Problem 0004 : Simultaneous Equation

#include <iostream>
#include <iomanip>

using namespace std;
 
#define N 2

int main(void)
{
	double a[N][N+1];
	int i, j, k;
	for( i=0; i<N; i++ ){
		for( j=0; j<N+1; j++ ){
			cin >> a[i][j];
		}
	}

	double p, d;
	for( k=0; k<N; k++ ){
		p = a[k][k];
		for( i=0; i<N+1; i++ )
			a[k][i] /= p;
		for( i=0; i<N; i++ ){
			if( i != k ){
				d = a[i][k];
				for( j=0; j<N+1; j++ ){
					a[i][j] -= a[k][j]*d;
				}
			}
		}
	}

	cout << setprecision(3) << setiosflags(ios::fixed);
	cout << a[0][N] << " " << a[1][N] << endl;

	return 0;
}

Problem 0006 : Reverse Sequence

#include <iostream>
#include <string>

using namespace std;

std::string reverse( std::string src ){
	std::string str = src;

	for( int i=0; i<src.size(); i++ )
		str[i] = src[src.size()-1-i];

	return str;
}

int main(void){
	string str;

	cin >> str;
	cout << reverse(str) << endl;

	return 0;
}

Problem 0007 : Dept Hell

#include <iostream>

using namespace std;

int main(void){
	int n;
	cin >> n;

	int m = 100000;

	int i;
	for( i=0; i<n; i++ ){
		m = (double)m*1.05;
		if( m%1000 ){
			m += 1000; m -= m%1000;
		}
	}

	cout << m << endl;

	return 0;
}

Problem 0008 : Sum of 4 Integers

#include <iostream>

using namespace std;

int n, cnt;

void calc( int n, int sum, int level ){
	if( level == 4 ){
		if( sum == n ){
			cnt++;
		}
		return;
	}

	int i;
	for( i=0; i<=9; i++ ){
		calc( n, sum+i, level+1 );
	}
	return;
}

int main(void)
{
	while( cin >> n ){
		cnt = 0;
		calc( n, 0, 0 );
		cout << cnt << endl;
	}

	return 0;
}