- 博客(21)
- 收藏
- 关注
原创 6、分巧克力
小于x的最大值:符号:>=返回值: l / r-1#include <stdio.h>#include <stdlib.h>#include <string.h>int n,k;int h[100010],w[100010];int isgreen(int d){ int num=0; for(int i=0;i<n;i++){ num+=(h[i]/d)*(w[i]/d); } ret.
2022-02-28 22:23:01
241
1
原创 5、查找顺序数组中目标值的下标(二分查找)
#include <stdio.h>#include <stdlib.h>#include <string.h>int isgreen(int val,int x){ return val>=x;}int bin_search(int *num,int numsize,int target){ int l=-1,r=numsize; int mid; while(l+1<r){ mid=l+(r-l)/
2022-02-28 21:29:33
134
原创 [蓝桥杯]拼数
#include <bits/stdc++.h>using namespace std;string a[21];bool cmp(string a,string b){ return a+b>b+a;}int main(){ int n; cin>>n; for(int i=0;i<n;i++){ cin>>a[i]; } sort(a,a+n,cmp); for(int .
2022-02-22 03:16:06
385
原创 高精度求阶乘
#include <bits/stdc++.h>using namespace std;int a[10000]={0};int main(){ int n; cin>>n; a[0]=1; for(int i=1;i<=n;i++){ int cap=0; for(int j=0;j<10000;j++){ a[j]=a[j]*i+cap; cap=a[
2022-02-22 02:41:02
407
原创 高精度乘法
#include <stdio.h>#include <string.h>#include <stdlib.h>int max(int a,int b){ return a>b?a:b;}void swap(char* a,char *b){ char t=*a; *a=*b; *b=t;}void inverse(char *a){int i,len=strlen(a);for(i=0;i<len/2;i+
2022-02-22 00:11:58
326
原创 高精度加法
#include <stdio.h>#include <string.h>#include <stdlib.h>int max(int a,int b){ return a>b?a:b;}void swap(char *a,char *b){ char t=*a; *a=*b; *b=t;}void inserve(char *a){ int i,len=strlen(a); for(i=0;i<
2022-02-21 22:56:14
125
原创 十天挑战150题:[第14题]给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。(day2)
#include <stdio.h>#include <stdbool.h>#define datatype int #define maxn 10000/*#define true 1#define false 0*/struct stack{ datatype data[maxn]; int top;};struct stack skt1,skt2;void stackclear(struct stack *stk){ stk->
2022-02-17 23:17:12
283
原创 十天挑战150题:[第13题]位或 | 的应用 | 低位首零变一(day2)
#include <stdio.h>int main() { int x; while(scanf("%d", &x) != EOF) { printf("%d\n", x|(x + 1)); } return 0;}或运算(|):有1则1;
2022-02-17 16:11:44
133
原创 十天挑战150题:[第12题]位与 & 的应用 | 一句话消除末尾连续的 1(day2)
#include <stdio.h>int main() { int x; while(scanf("%d", &x) != EOF) { printf("%d\n", x & (x + 1)); } return 0;}与运算(&):相同才得1,不同则为0;
2022-02-17 15:49:17
155
原创 十天挑战150题:[第11题]给定一个数 n,求它各因子数和(day2)
#include <stdio.h>#include <math.h>int yinzisum(int x){ int ans=0; for(int i=1;i<=sqrt(x);i++){ if(x%i==0){ ans+=i; if(i*i!=x) ans+=x/i; } } return
2022-02-17 14:06:57
226
原创 十天挑战150题:[第10题]给定一个数 n,求它的因子数(day2)
#include <stdio.h>#include <math.h>int yinzi(int x){ int ans=0; for(int i=1;i<=sqrt(x);i++){ if(x%i==0){ ans++; if(i*i!=x) ans++; } } return ans;}
2022-02-17 14:03:15
376
原创 十天挑战150题:[第9题]判断素数(day2)
#include <stdio.h>#include <string.h>#include <math.h>int isP(int x){ if(x<=1) return 1; for(int i=2;i<=sqrt(x);i++){ if(x%i==0) return 0; } return 1;}int main(){ printf("素数有:"); for(int i=1;i
2022-02-17 04:03:19
359
原创 十天挑战150题:[第8题]给定一个字符串,原地对它进行翻转并输出(day2)
#include <stdio.h>#include <string.h>void swap(char *a,char *b){ int temp; temp=*a; *a=*b; *b=temp;}int main(){ char a[100000]; scanf("%s",a); for(int i=0;i<strlen(a)/2;i++){ swap(&a[i],&a[st
2022-02-17 03:24:12
229
原创 十天挑战150题:[第7题]给定一个 n 个元素的数组, 删除数组第一个位置上的数,然后再输出整个数组(day2)
#include <stdio.h>int main() { int x,insert; scanf("%d",&x); int a[x+1]; for(int i=0;i<x;i++){ scanf("%d",&a[i]); } scanf("%d",&insert); for(int i=x;i>=1;i--){ a[i]=a[i-1]; } a[0]
2022-02-17 02:52:22
161
原创 十天挑战150题:[第6题]给定 l 和 r,输出所有 [l, r] 的水仙花数 | 差分法初体验(day2)
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ int val[1000]; int all[1000]; all[99]=0; memset(val,0,sizeof(int)*1000); for(int i=100;i<1000;i++){ int v1=i/100; //求百位
2022-02-17 01:55:25
245
原创 十天挑战150题:[第五题]给定 a 和 b,求它们的最小公倍数 | 最小公倍数 和 最大公约数有什么关系呢?(day1)
#include <stdio.h>int gcd(int a,int b){ if(!b){ return a; } return gcd(b,a%b);}int main(){ int a,b; scanf("%d%d",&a,&b); printf("%d",a/gcd(a,b)*b); return 0;}
2022-02-15 20:28:29
127
原创 十天挑战150题:[第四题]给定 a 和 b,代表分数 a / b,求它的最简分数(day1)
#include <stdio.h>int zhan(int a,int b){ if(!b) return a; return zhan(b,a%b);}int main(){ int a,b; scanf("%d%d",&a,&b); int g=zhan(a,b); printf("%d/%d",a/g,b/g); return 0;}
2022-02-15 19:10:01
239
原创 十天挑战150题:[第三题]给定 a 和 b,求它们的最大公约数 | 辗转相除法(day1)
#include <stdio.h>int zhan(int a,int b){ if(!b) return a; return zhan(b,a%b);}int main(){ int a,b; scanf("%d%d",&a,&b); printf("%d",zhan(a,b)); return 0;}
2022-02-15 19:04:16
158
原创 十天挑战150题:[第二题]给出一个R进制的数 x,求它的十进制表示(day1)
#include <stdio.h>int main(){ int x; char k[1000]; int sum=0; scanf("%d%s",&x,k); for(int i=0;k[i];i++){ sum=(sum*x+k[i]-'0'); } printf("%d",sum); return 0;}
2022-02-15 18:32:41
90
原创 十天挑战150题:[第一题]一年的第几天(day1)
给出一个字符串代表日期,问它是这一年的第几天 | 我和闰年有个约会#include <stdio.h>int monthday[]={0,31,28,31,30,31,30,31,31,30,31,30,31};int isR(int y){ return y%4==0&&y%100!=0||y%100==0;}int sumday[13];int y,m,d;char str[100];int sum;int main(){ s.
2022-02-15 16:45:02
289
1
原创 冒泡法
冒泡法排列大小(从小到大)#include <stdio.h>int main(){ int j,n,i,t; printf("请输入要排的数量:\n"); scanf("%d",&n); int a[n-1]; for(i=0;i<n;i++) /*录入数组*/ scanf("%d",&a[i]); for(j=0;j<n-1;j++) //外层循环 for(i=0;i<n-1-j;i++) //内层循环 { if
2021-01-18 20:43:42
78
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人