Volume 1 / 0133->0135

パソコン甲子園2006本選 解答

Problem 0133 : Rotation of a Pattern

#include <iostream>

using namespace std;


int main(void)
{
	char patt[8][8], tmp[8][8];
	int i, j;

	for( i=0; i<8; i++ ){
		for( j=0; j<9; j++ ){
			patt[i][j] = cin.get();
		}
	}

	cout << "90" << endl;
	for( i=0; i<8; i++ ){
		for( j=0; j<8; j++ ){
			tmp[i][j] = patt[7-j][i];
			cout << patt[7-j][i];
		}
		cout << endl;
	}
	for( i=0; i<8; i++ )
		for( j=0; j<8; j++ )
			patt[i][j] = tmp[i][j];

	cout << "180" << endl;
	for( i=0; i<8; i++ ){
		for( j=0; j<8; j++ ){
			tmp[i][j] = patt[7-j][i];
			cout << patt[7-j][i];
		}
		cout << endl;
	}
	for( i=0; i<8; i++ )
		for( j=0; j<8; j++ )
			patt[i][j] = tmp[i][j];

	cout << "270" << endl;
	for( i=0; i<8; i++ ){
		for( j=0; j<8; j++ ){
			tmp[i][j] = patt[7-j][i];
			cout << patt[7-j][i];
		}
		cout << endl;
	}

	return 0;
}

Problem 0134 : Exit Survey

#include <iostream>

using namespace std;


int main(void)
{
	int n, input;
	double sum = 0;

	cin >> n;
	for( int i=0; i<n; i++ ){
		cin >> input;
		sum += input;
	}

	cout << (int)(sum/n) << endl;

	return 0;
}

Problem 0135 : Clock Short Hand and Long Hand(未)

"Wrong Answer" なんでだろ。

#include <iostream>

using namespace std;


int main(void)
{
	int n, hh, mm;
	double d;

	cin >> n;
	while( n-- > 0 ){
		scanf("%d:%d", &hh, &mm );
		d = hh*30.0 + mm*0.5 - mm*6.0;
		if( d < 0 ) d *= -1;

		if( d < 30.0 ){
			cout << "alert" << endl;
		} else if( d >= 90.0 ){
			cout << "safe" << endl;
		} else {
			cout << "warning" << endl;
		}
	}


	return 0;
}