CF39H

前言

谁来给我讲讲九九乘法表啊。

以上菲克向。

(sf{Solution})

看题上来就是数据范围 (2leq kleq 10) ,显然打表可以轻松水过,数据这么小,手算是没问题的啦。

由于本人比较 naive,就写了一个 naive 的模拟。

大致思路是先搞一个九九乘法表,再进制转换,具体还是康代码吧。

评测自动过滤多余空格。

不用处理输出格式啦,好耶!

(sf{Code})

#include<iostream>
#include<cstdio>
using namespace std;
int a[15][15],k,b[1005];
inline int f(int x)
{
	int q=0,p=0;
	while(x!=0)
	{
		b[++q]=x%k;
		x/=k;
	}//进制转换
	for(int i=q;i>=1;--i)
		p=p*10+b[i];//搞成 int 类型
	return p;
}
signed main()
{
	ios::sync_with_stdio(false);
	cin>>k;
	for(int i=1;i<=9;++i)
		for(int j=1;j<=9;++j)
			a[i][j]=f(i*j);//生成 k 进制下的九九乘法表
	for(int i=1;i<k;++i)	
	{
		for(int j=1;j<k;++j)
			cout<<a[i][j]<<" ";
		cout<<"
";	
	}//输出
	return 0;
}
原文地址:https://www.cnblogs.com/CM-0728/p/15160308.html