CF39H

前言

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

以上菲克向。

\(\sf{Solution}\)

看题上来就是数据范围 \(2\leq k\leq 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<<"\n";	
	}//输出
	return 0;
}
posted @ 2021-08-19 09:55  Callous_Murder  阅读(61)  评论(0编辑  收藏  举报