⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2654.txt

📁 北大ACM题目例程 详细的解答过程 程序实现 算法分析
💻 TXT
字号:
Problem Id:2654  User Id:fzk 
Memory:36K  Time:468MS
Language:C++  Result:Accepted

Source 

#include <stdio.h>
#include <memory.h>

int n, k;
int a[200], b[200];
char p[]={ 'r', 's', 'p' };

int main( )
{
	int i, s1, s2, k1, k2;
	char w1[100], w2[100];

	while( scanf( "%d %d", &n, &k ) == 2  && n != 0 )
	{
		memset( a, 0, sizeof a );
		memset( b, 0, sizeof b );

		for( i=0; i<n*(n-1)*k/2; i++ )
		{
			scanf( "%d %s %d %s", &s1, w1, &s2, w2 );
			for( k1 =0; p[k1] != w1[0]; k1++ )
				;
			for( k2 =0; p[k2] != w2[0]; k2++ )
				;

			if( (k1+1)%3 == k2 )
				a[s1]++, b[s2]++;
			else if( (k2+1)%3 == k1 )
				a[s2]++, b[s1]++;
		}

		for( i=1; i<=n; i++ )
			if( a[i] + b[i] == 0 )
			{
				printf( "-\n" );
			}
			else
			{
				printf( "%.3lf\n", (double)a[i] / ( a[i] + b[i] ) );
			}
		printf( "\n" );
	}

	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -