23/2/23学习记录(动态规划--背包九讲)
- 1. 01背包问题
- 2. 完全背包问题
- 3. 多重背包问题
- 4. 混合背包问题
- 5. 二维费用背包问题
- 6. 分组背包问题
- 7. 背包问题求方案数
- 8. 求背包问题的方案
- 9. 有依赖的背包问题
#include <stdio.h>
int relativelyPrime(int x, int y) {
if (x == y && y == 1) {
return 0;
}
int minn = x < y ? x : y;
for (int i = 2; i <= minn; i++) {
if (x % i == 0 && y % i == 0) {
return 0;
}
}
return 1;
}
void solution(int n, int m) {
int count = 0;
for (int a = n; a < m - 1; a++) {
for (int b = a + 1; b < m; b++) {
for (int c = b + 1; c < m + 1; c++) {
if (relativelyPrime(a, b) &&
relativelyPrime(b, c) &&
relativelyPrime(a, c) &&
a * a + b * b == c * c) {
count++;
printf("%d %d %d\n", a, b, c);
}
}
}
}
if (count == 0) {
printf("Na\n");
}
}
int main() {
int n, m;
scanf("%d %d", &n, &m);
solution(n, m);
return 0;
}
2. 设置全局变量时存放在堆里,自动初始化。
3. 二维字符串数组排序
int min;
char tmp[11];
if(k <= cnt) // sorting
{
for(i=0;i<k;i++) // k次简单排序
{
min = i;
for(j=i+1;j<cnt;j++)
{
if(strcmp(sort[min],sort[j])>0)
{
min = j;
}
}
if(min!=i)
{
strcpy(tmp,sort[min]);
strcpy(sort[min],sort[i]);
strcpy(sort[i],tmp);
}
}
printf("%s",sort[k-1]);
}
}
联想公司福利 1477人发布