「Wdoi-5」天才⑨与天才拆分
题目背景
\kern{75pt}
萌萌琪露诺在寺子屋的教室里面见到了哆来咪·苏伊特。心怀好意的哆来咪告诉了她期末考试的题目,只要解出这些题目就能免于被慧音老师头槌。兴奋的琪露诺告别了哆来咪,猛然发现自己已经身处在期末考试的考场之上!但是琪露诺实在是太笨了,醒来就把哆来咪告诉她的题目忘得一干二净,只记得试卷上有大量的⑨。
现在琪露诺已经在考试啦,你可以使用⑨的妖精链接回答她的问题,以平复她忘记了考试答案的悲痛。你能帮帮她吗?
温馨提示:考试作弊是不对的哦。
题目描述
琪露诺定义一个十进制正整数为「 k k k 阶天才数」,当且仅当该整数的位数为 k k k 的倍数,且每一个数位均为 9 9 9。例如, 9999 9999 9999 是 2 2 2 阶天才数,而 999 999 999 不是 2 2 2 阶天才数,但是它是 1 1 1 阶天才数,也是 3 3 3 阶天才数。
琪露诺给定你 t t t 个询问,每个询问有两个整数 n n n 和 k k k,希望你能帮帮她,告诉她能不能把 n n n 拆分成若干个 k k k 阶天才数的和。
输入格式
- 第一行是一个整数 t t t,代表询问的个数。
- 接下来 t t t 行,每行两个整数 k k k 和 n n n,代表一个询问。
输出格式
- 输出共
t
t
t 行。如果对应的询问答案是可以,输出一行一个字符串
aya
,否则输出一行一个字符串baka
。
样例 #1
样例输入 #1
2
1 999
2 999
样例输出 #1
aya
baka
提示说明
本题共有 20 20 20 个测试点,每个测试点 5 5 5 分。最终分数为所有测试点分数之和。
KaTeX parse error: Expected a control sequence at position 6: \def{̲\n}{\text{无特殊限制…
对于全部数据,满足 1 ≤ t ≤ 1 0 3 1\le t\le 10^3 1≤t≤103, 1 ≤ n i ≤ 1 0 18 1\le n_i\le 10^{18} 1≤ni≤1018, 1 ≤ k i ≤ 10 1\le k_i\le 10 1≤ki≤10。
代码内容
// #include <iostream>
// #include <algorithm>
// #include <cstring>
// #include <stack>//栈
// #include <deque>//队列
// #include <queue>//堆/优先队列
// #include <map>//映射
// #include <unordered_map>//哈希表
// #include <vector>//容器,存数组的数,表数组的长度
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll p[20];
int main()
{
p[0]=1;
for(ll i=1;i<=20;i++)
p[i]=p[i-1]*10;
ll t;
cin>>t;
while(t--)
{
ll k,n;
cin>>k>>n;
if(n%(p[k]-1)==0)
cout<<"aya"<<endl;
else
cout<<"baka"<<endl;
}
return 0;
}