题解:ABC319B - Measure
·题目
链接:Atcoder。
链接:洛谷。
·难度
算法难度:C。
思维难度:C。
调码难度:C。
综合评价:入门。
·算法
模拟。
·思路
遍历字符串的每一位,从1至9一次遍历,若有至少一个满足要求就输出最小的,否则输出-。
·代价
O(n)。
·细节
注意判断条件是&不是|。
·代码
#include<bits/stdc++.h>
using namespace std;
int n=0;
int main(){
scanf("%d",&n);
for(int i=0;i<=n;i++){
//遍历每一位
bool flag=false;
//记录是否存在至少一个数合法
for(int j=1;j<=9;j++){
//遍历每一个可能选择的数
if(n%j==0&&i%(n/j)==0){
printf("%d",j);
//第一个满足条件的就是最小的
flag=true;
//记录已找到
break;
}
}
if(flag==false){
printf("-");
//若仍未找到输出-
}
}
return 0;
}
·注意
打卡。