- 博客(66)
- 收藏
- 关注
原创 背包问题(c语言)
a种物品,每种物品仅1件,物品n的重量d[0][n],体积d[1][n],价值d[2][n],背包承重量为b,容积为c。所有参数均为正整数,如何选择装入背包的物品子集,使得装入背包物品的总价值最大?
2023-05-14 00:59:29
609
原创 分解式(C语言)
大于1的正整数 n 都可以分解为 n = x1×x2×…×xm,对于给定正整数n,计算n共有多。少种不同的分解式的solve( )过程如下。
2023-05-05 17:05:13
320
原创 n皇后问题(C语言)
n×n的棋盘上放置n个不同行不同列不同斜线的皇后,是否有放置方案,有请输出可行的放置方案数。(同一条斜线上的任意两点的行间距 = 列间距)
2023-04-28 21:07:22
225
原创 输出全排列(C语言)
步骤1.将数列中第一个数与其之后的数互换位置得到新的排序,步骤2.将(原排序+之前得到的所有排序的)第二个数与其之后的数互换位置得到新的排序,以此类推……设第n个数为k,其之后将要与其互换位置的数为b,若在该排序中,存在k或k到b之间的数等于b,则跳过此次互换。设k与b之间存在x等于b,k与b互换后得到的排序 = k与x互换,k再与b互换后得到的排序。反例说明:若在步骤2中将第二个数与第一个数互换,该排序会与步骤1或步骤2中的某个排序重合。
2023-04-23 01:49:33
2081
原创 自测-4 Have Fun with Numbers
#include<stdio.h>int main(){ char s[20],t[20]; int a=1,n=0,m=0; scanf("%s",s); t[0]=s[0]*2-48; if(s[0]>52){ t[0]-=10; printf("No\n"); m=1; } for(;s[a];a++){ t[a]=s[a]*2-48; if(s
2022-11-23 14:33:41
144
原创 自测-2 素数对猜想
#include<stdio.h>int main(){ int a,b=3,s=0,n=5,m; scanf("%d",&a); for(;n<=a;n+=2){ for(m=3;n%m&&m*m<n;m+=2); if(m*m>n){ if(n-b==2){ s++; } b=n;
2022-11-18 14:02:48
87
原创 自测-1 打印沙漏
#include<stdio.h>int main(){ int a,c=0,n=3,m=1; char b; scanf("%d %c",&a,&b); for(;m<=a;n+=2){ m+=n*2; } a-=m-(n-2)*2; for(n-=4;n>1;n-=2){ for(m=0;m<n;m++){ printf("%c",b);
2022-11-16 13:11:08
221
原创 7-7 六度空间
#include<stdio.h>void dfs(int a,int *s,int n,int m){ if(m>6){ return; } m++; int k=1; for(;k<=a;k++){ if(s[n*a+k]){ if(!s[k]){ s[0]++; s[k]=m; dfs
2022-10-30 11:59:10
144
原创 输出表格(python3.10.7)
输出到屏幕的全角字符大小与半角字符大小之比大约为13:8(比值与我不一样的,把代码中所有的13和8替换掉就行了)计算比值的方法:print(01234567890123456789012345678901234567890)print("上下比对求出比值延长这两个输出可使比值更加精确")输出表格:a=int(input())#输入列数c=input()#间距为一个半角空格e=0f=0g=0b=""h=0for d in c: if d!=' ': if le
2022-09-28 15:24:27
1445
原创 7-24 约分最简分式
#include<stdio.h>int zz(int,int);int main(){ int a,b,c; scanf("%d/%d",&a,&b); if(a<b){ c=zz(b,a); }else{ c=zz(a,b); } printf("%d/%d",a/c,b/c);}int zz(int a,int b){ int c; for(;a%b!=0;.
2022-07-14 15:40:18
84
原创 7-22 龟兔赛跑
#include<stdio.h>int main(){ int a,b=0,c=0; scanf("%d",&a); if(a<=10){ printf("^_^ %d",a*9); return 0; } for(a-=10;a>0;a-=10){ b+=90; c+=30; if(b>c){ if(a<=30){.
2022-07-14 15:34:11
104
原创 7-2 一元多项式的乘法与加法运算(复习)
加法部分与上次不同#include<stdio.h>int main(){ int a,n=0,m,k=0; scanf("%d",&a); int b[a],c[a],d; for(;n<a;n++){ scanf("%d%d",&b[n],&c[n]); } scanf("%d",&d); int e[d],f[d],g[a*d],h[a*d]; for(n=0;n&l
2022-07-14 15:29:21
367
原创 7-6 列出连通集
#include<stdio.h>int a[10][11]={0},b;void dfs(int c);int main(){ int c,e,f,g[10],n=0,m; scanf("%d%d",&b,&c); for(;n<c;n++){ scanf("%d%d",&e,&f); a[e][f]=a[f][e]=1; } for(n=0;n<b;n++){ .
2021-12-14 02:30:17
936
原创 7-5 堆中的路径
这题小顶堆的排序过程,例:#include<stdio.h>int main(){ int a,b; scanf("%d%d",&a,&b); int c[a],e,n=1,m; scanf("%d",&c[0]); for(;n<a;n++){ scanf("%d",&e); for(m=n;m>0&&c[(m-1)/2]>e;m=(m-1)/2){
2021-11-29 17:01:52
583
原创 7-4 是否同一棵二叉搜索树
#include<stdio.h>int ss(int *a,int *b,int c);int main(){ int a,b,c[10],d[10],n,m; scanf("%d",&a); for(;a;){ scanf("%d",&b); for(n=0;n<a;n++){ scanf("%d",&c[n]); } for(n=0;n<
2021-11-10 16:14:08
108
原创 L1-009 N个数求和
#include<stdio.h>int main(){ long a,b=0,c=1,d,e,f=0,g,h=0,i,n=0,m; scanf("%ld",&a); for(;n<a;n++){ scanf("%ld/%ld",&d,&e); f+=d/e; d%=e; if(d<0){ d=-d; h=1;
2021-11-09 19:43:04
148
原创 7-19 支票面额
import java.util.Scanner;public class Main{ public static void main(String[]args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(),n=0,m; for(;n<100;n++){ for(m=0;m<100;m++){ if(98*n-199*
2021-10-17 19:05:32
122
1
原创 7-17 爬动的蠕虫
import java.util.Scanner;public class Main{ public static void main(String[]args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(),b=sc.nextInt(),c=sc.nextInt(),n=1; for(a-=b;a>0;n+=2){ a+=c-b; }
2021-10-16 16:58:15
86
原创 7-18 二分法求多项式单根
import java.util.Scanner;public class Main{ public static void main(String[]args){ Scanner sc=new Scanner(System.in); double a[]=new double[6],b,c; int n=0; for(;n<6;n++){ a[n]=sc.nextDouble(); }
2021-10-16 16:55:36
175
原创 7-16 求符合给定条件的整数集
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n=0,m,a=sc.nextInt(),b,c=a; for(;n<4;n++){ if(n>0){ System.out.println
2021-10-09 14:50:55
102
原创 7-15 计算圆周率
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); double a=sc.nextDouble(),b=1/3.0,s=1,n=2; for(;b>=a;n++){ s+=b; b*=n/(2*n+1);
2021-10-04 16:36:04
82
原创 7-14 求整数段和
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(),b=sc.nextInt(),s,n=0; s=(a+b)*(b-a+1)/2; for(;a<=b;a++,n++){ if(n&
2021-10-04 16:35:31
114
原创 7-13 日K蜡烛图
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); double a=sc.nextDouble(),b=sc.nextDouble(),c=sc.nextDouble(),d=sc.nextDouble(),p=0; if(a>d){
2021-10-04 16:34:57
124
原创 7-12 两个数的简单计算器
import java.util.Scanner;public class Main{ public static void main (String[] args){ Scanner sc=new Scanner(System.in); String a=sc.next(),b=sc.next(),c=sc.next(); int d=Integer.valueOf(a); char[] e=b.toCharArray();
2021-10-04 16:34:09
214
原创 7-11 分段计算居民水费
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); double a=sc.nextDouble(); if(a>15){ System.out.print(String.format("%.2f",2.5*a-17.5));
2021-10-04 16:33:14
261
原创 7-10 计算工资
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(),b=sc.nextInt(); if(a<5){ a=30; }else{ a=50; } if(b>4
2021-10-04 16:32:35
239
原创 7-9 用天平找小球
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(),b=sc.nextInt(),c=sc.nextInt(); if(a==b){ System.out.print("C"); }else if(a==c){
2021-10-04 16:31:41
92
原创 7-8 超速判断
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(); if(a>60){ System.out.print("Speed: "+a+" - Speeding"); }else{ Syst
2021-10-04 16:30:34
195
原创 7-7 12-24小时制
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); String a=sc.next(); char[] b=a.toCharArray(); int n=0,c,d=a.length(),p=0; for(;b[n]!=':';n++); c=
2021-09-23 13:31:50
159
原创 7-6 混合类型数据格式化输入
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); double a=sc.nextDouble(); String b=sc.next(); String c=sc.next(); double d=sc.nextDouble(); Syste
2021-09-23 13:31:02
203
原创 7-5 表格输出
import java.util.Scanner;public class Main{ public static void main(String[] args){ System.out.print("------------------------------------\nProvince Area(km2) Pop.(10K)\n------------------------------------\nAnhui 139600.00 6461.
2021-09-23 13:30:20
144
原创 7-4 BCD解密
import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int a=sc.nextInt(); System.out.print(a/16*10+a%16); }}
2021-09-23 13:29:19
98
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人