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

📄 分数的位置.cpp

📁 这是一道关于求分数的位置的程序,有兴趣的可以下载砍一下我想就是这些了.
💻 CPP
字号:
#include <iostream>
using namespace std;
int main()
{
	int m, n;
	while (cin >> m >> n)
	{
		int **data = new int *[(m-1)*m/2];
		int i;
		for (i=0; i<(m-1)*m/2; i++)
		{
			data[i] = new int [2];
		}
		int count = 0, j;
		for (i=m; i>=2; i--)
		{
			for (j=1; j<i; j++)
			{
				cout <<(data[count][0] = j)<<"/"<<(data[count][1] = i)<<endl;				
				count++;
			}
		}
		int temp1, temp2, flag = 1;
		for (i=1; i<(m-1)*m/2 && flag==1; i++)
		{			
			flag = 0;
			for (j=0; j<(m-1)*m/2-i; j++)
			{
				int t = data[j][0]*data[j+1][1]-data[j][1]*data[j+1][0];
				if (t > 0 || (t == 0 && data[j][0] > data[j+1][0]))
				{
					flag = 1;
					temp1 = data[j][0];
					data[j][0] = data[j+1][0];
					data[j+1][0] = temp1;
					temp2 = data[j][1];					
					data[j][1] = data[j+1][1];					
					data[j+1][1] = temp2;
				} 
			}
//			cout << data[j][0] << "/" << data[j][1] << "    ";
		}
//		cout << data[0][0] << "  / " << data[0][1]<< endl;
		i = 1;
		j = 0;
		while (true)
		{
			if (i >= n)
			{
				printf("%d/%d\n", data[j][0], data[j][1]);
				break;
			}
			if ((data[j][0]*data[j+1][1]-data[j][1]*data[j+1][0]) != 0)
			{
				i++;
//				cout << data[j][0] << "/" << data[j][1]<< endl;
			}
			j++;
		}
		delete []data;
	}
	return 0;
}

⌨️ 快捷键说明

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