三个WA, 在线求解
  • 板块灌水区
  • 楼主Wendy_Hello_qwq
  • 当前回复4
  • 已保存回复4
  • 发布时间2024/4/2 19:57
  • 上次更新2024/4/2 21:36:05
查看原帖
三个WA, 在线求解
1039211
Wendy_Hello_qwq楼主2024/4/2 19:57

B2145 digit 函数

#include <cstdio>
using namespace std;
int tot, ans, h[10005];
void digit (int, int);
int main()
{
//	freopen ("digit.in", "r", stdin);
//	freopen ("digit.out", "w", stdout);
	int n = 0, k = 0;
	scanf ("%d%d", &n, &k);
	digit (n, k);//调用函数 
	if (k > tot) printf ("0");//如果求的位数比n本身多,输出0 
	else printf ("%d", ans);//否则输出第k位上的数字 
	return 0;
//	fclose (stdin); fclose (stdout);
}
void digit (int n, int k)
{
	//递归边界
	if (tot == k) ans = h[k];//赋值第k位 
	else
	{
		tot++;
		h[tot] = n;//h数组将n的每一位存起来 
		n /= 10;
		digit (n, k);//调用函数 ,进行递归
	}
}
2024/4/2 19:57
加载中...