目录
1. 不喜欢带钱的小C 🌟🌟
2. 数组排序 ※
3. 超级素数 ※
🌟 每日一练刷题专栏 🌟
Golang每日一练 专栏
Python每日一练 专栏
C/C++每日一练 专栏
Java每日一练 专栏
1. 不喜欢带钱的小C
小C不喜欢带钱,有一次竟被他碰上了一家不能使用移动支付(也不能找钱)的神秘商店。请问小C至少准备多少张RMB才能恰好支付n元。RMB的面额有100元,50元,20元,10元,5元,1元。
输入格式:
输入一个整数n
输出格式:
最少带几张。
样例输入1:
50
样例输出1:
1
约定:
1<=n<=100
以下程序实现了这一功能,请你填补空白处内容:
```c++
#include <iostream>
using namespace std;
int solve(int tar, int * meta, int metan, int * seed = NULL, int seedn = 0)
{
if (tar == 0)
{
return seedn;
}
int min = -1;
int m;
int * seed1 = new int[seedn + 1];
if (seed)
memcpy(seed1, seed, sizeof(int) * seedn);
for (int i = 0; i < metan; i++)
{
if (meta[i] <= tar)
{
seed1[seedn] = meta[i];
_____________________;
if (m != -1 && (min == -1 || min > m))
min = m;
break;
}
}
delete[] seed1;
return min;
}
int main()
{
int arr[] = { 100, 50, 20, 10, 5, 1 };
int n = 6;
int total;
cin >> total;
int result = solve(total, arr, n);
cout << result << endl;
return 0;
}
```
出处:
https://edu.csdn.net/practice/26559384
代码:
#include <iostream>
using namespace std;
int solve(int tar, int * meta, int metan, int * seed = NULL, int seedn = 0)
{
if (tar == 0)
{
return seedn;
}
int min = -1;
int m;
int * seed1 = new int[seedn + 1];
if (seed)
memcpy(seed1, seed, sizeof(int) * seedn);
for (int i = 0; i < metan; i++)
{
if (meta[i] <= tar)
{
seed1[seedn] = meta[i];
m = solve(tar - meta[i], meta, metan, seed1, seedn + 1);
if (m != -1 && (min == -1 || min > m))
min = m;
break;
}
}
delete[] seed1;
return min;
}
int main()
{
int arr[] = { 100, 50, 20, 10, 5, 1 };
int n = 6;
int total;
cin >> total;
int result = solve(total, arr, n);
cout << result << endl;
return 0;
}
输出:
略
2. 数组排序
定义一个包含5个整型元素(1, 5, 3, 92, 6)的数组,将数组元素按照由 小到大的顺序输出
出处:
https://edu.csdn.net/practice/26559385
代码:
#include <stdio.h>
#define N (int)5
int main()
{
int a[N] = {1,5,3,92,6};
int tmp;
for (int i = 0; i < N-1; i++)
{
for (int j = 0;j < N-1-i;j++)
{
if (a[j] > a[j+1])
{
tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
}
}
}
for (int i = 0; i < N; i++)
{
printf("%d ",a[i]);
}
return 0;
}
输出:
略
3. 超级素数
一个n位超级素数是指一个n位正整数,它的前1位,前2位,......,前n位均为素数,例如,733是个3位超级素数,因为7,73,733均为素数。输出全部的3位数超级素数。 输入 输出 全部的3位数超级素数,每行一个数
出处:
https://edu.csdn.net/practice/26559386
代码:
#include <stdio.h>
int isprime(int x)
{
if (x == 0 || x == 1) return 0;
for (int i = 2; i <= x / 2; i++)
if (!(x % i)) return 0;
return 1;
}
int isallprime(int x)
{
do
{
if (!isprime(x)) return 0;
x /= 10;
}
while (x > 0);
return 1;
}
int main()
{
for (int i = 111; i <= 1000; i++)
if (isallprime(i)) printf("%d\n", i);
}
输出:
233
239
293
311
313
317
373
379
593
599
719
733
739
797
🌟 每日一练刷题专栏 🌟
✨ 持续,努力奋斗做强刷题搬运工!
👍 点赞,你的认可是我坚持的动力!
🌟 收藏,你的青睐是我努力的方向!
✎ 评论,你的意见是我进步的财富!
☸ 主页:https://hannyang.blog.csdn.net/
Golang每日一练 专栏 | |
Python每日一练 专栏 | |
C/C++每日一练 专栏 | |
Java每日一练 专栏 |