1.整除的个数
大致意思是给两个整数 x, y
求1~x中所有可以整除y的数的个数
想的时候很简单觉得直接枚举出结果就好了 结果测试的时候超时
后来分来一半来做 还是超时
想了半天不知道怎么想 后来才发现直接用x对y求整除就是结果
想了下的确是这样 x中能够容纳多少个y 不就说明 1~x中有多少种可以整除y的数据么
2.蛇形填数
题意都懂
主要想法就是按照数字的填写方式写到一个数组中 然后再直接输出就好
3.各位数是否属于某集合
题意是这样的意思 先给你一个整数的集合(每个数小于10) 然后输入两个整数 x, y 然后做乘法 问乘数 和 在过程中产生的数 和 结果这三类数中的各个位置上的数是不是属于该集合 如果属于则正确 否则错误
之前的想法是对每个数都进行分解 然后存入一个数组中 与集合所在的数组进行扫描对比 如果有不同的数就停止
后来发现这样写比较麻烦而且不知道如果确定数的位数
后来发现 可以用sprintf()函数把整数写到字符串中 将各个数都写到字符串中 再通过strchr()函数进行扫描判断(这个时候整数的集合是直接写入字符串存储的) 然后如果不存在就返回NULL