- 博客(23)
- 收藏
- 关注
原创 农夫和奶牛(二分法)
农夫john建造了一座很长的畜栏,它包括N(2<=N<=100000)个隔间,这些小隔间的位置为x0,…,xn-1(0<=xi<=1000000000,均为整数,各不相同)。john的C(2<=C<=N)头牛每头分到一个隔间。牛都希望互相离得远点省得互相打扰。怎样才能使任意两头牛之间的最小距离尽可能的大,这个最大的最小距离是多少呢?解法1:先得到排序后的隔...
2019-01-23 11:16:43
2226
1
原创 找一对数(二分法)
输入n(n<=1000)个整数,找出其中的两个数,他们之和等于整数m(假定肯定有解)。题中所有整数都能用int表示解法1:用两重循环,枚举所有的取数方法,复杂度是O(n^2)的。for(int i=0;i<n-1;++i)for(int j=i+1;j<n;++j)if(a[i]+a[j]==m)break;100000^2=100亿,在各种OJ上提交或参加各种程序...
2019-01-23 10:06:20
409
原创 二分查找函数LowerBound
在包含size个元素的、从小到大的int数组a里查找比给定整数p小的,下标最大的元素。找到则返回其下标,找不到则返回-1int LowerBound(int a[],int size,int p)//时间复杂度O(log(n)){int L=0;int R=size-1;int lastPos=-1;//到目前为止找到的最优解while(L<=R){int mid=L+(R-...
2019-01-21 21:08:34
326
原创 二分查找函数BinarySearch
写一个函数BinarySearch,在包含size个元素的、从小到大的int数组a里查找元素P,如果找到,则返回下标,如果找不到则返回-1.要求复杂度O(log(n)).int BinarySearch(int a[],int size,int p){int L=0;//查找区间的左端点int R=size-1;//查找区间的右端点while(L<=R)//如果查找区间不为空就继续...
2019-01-21 20:55:41
1158
转载 1997
#include<stdio.h>#define Maxlen 10000#define N 1997int mult(int num[],int len,int n){int i,rem=0;for(i=0;i<len;i++){rem+=num[i]*n;num[i]=rem%10;rem=rem/10;}if(rem>0){num[len]...
2019-01-03 20:37:17
126
原创 编写子串查找函数int findsubstr(char *str,char *s),若s是str的子串则返回其首字符对应的下标值,否则返回-1
int findsubstring(char *s,char *sub){int L1=strlen(s),L2=strlen(sub);int i,j;for(i=0;i<=L1-L2;i++){ for(j=0;j<L2;j++){ if(s[i+j]!=sub[j])break;}if(j==L2) return i;}return -1;}
2018-12-22 15:42:29
5964
原创 查找数组元素并输出下标
int search(int s[],int x,int n){int i,k;for (i=0; i<10; i++){if(s[i]==x){k= i;break;}else{k=-1;}}return k;}
2018-12-22 15:26:10
3306
原创 插入排序算法实现
void insertsort(int s[],int n){int j,i,x;for(i=1;i<n;i++){if(s[i]<s[i-1]){j=i-1; x=s[i]; s[i]=s[i-1];while(x<s[j]){ s[j+1]=s[j];j–; }s[j+1]=x; }}}
2018-12-22 15:23:39
201
原创 插入整数,保持升序
#include “stdio.h”#define N 10void insert(int s[],int x,int n);int main(){int i,m,a[N]={10,12,14,17,20,25,28,31,40};scanf("%d",&m);insert(a,m,N);for(i=0;i<N;i++) printf("%4d",a[i])...
2018-12-21 20:15:05
341
原创 插入整数,保持升序
#include “stdio.h”#define N 10void insert(int s[],int x,int n);int main(){int i,m,a[N]={10,12,14,17,20,25,28,31,40};scanf("%d",&m);insert(a,m,N);for(i=0;i<N;i++) printf("%4d",a[i])...
2018-12-21 20:15:05
209
原创 字符串按长度排序
#include<stdio.h>#include<string.h>#define N 50int main(){int slen[N][2],n,m,j,i;char str[N][50];scanf("%d",&n);getchar();for(i=0;i<n;i++){gets(str[i]);slen[i][0]=strlen...
2018-12-20 11:52:42
2557
原创 求0--n-1所有子集
#include<stdio.h>int main(){int n,m,i,j,k;printf(“n:”);scanf("%d",&n);m=1;for(i=1;i<=n;i++)//计算m,使m=2^n{m=m*2;}m–;//m=2^n-1for(i=0;i<=m;i++)//求每个集合的元素{printf("{");j=i;k=...
2018-12-16 19:28:32
456
原创 删除指定字符
#include&lt;stdio.h&gt;void delchar(char *s,char c);int main(){int i=0,j;char ch,a[40];while((a[i]=getchar())!=’\n’){i++;}a[i]=’\0’;scanf("%c",&amp;ch);delchar(a,ch);printf(“After delete:.
2018-12-16 18:46:39
385
原创 小数部分求和
#include<stdio.h>int main(){int i=0;double sum;double b[7];double c[7];double d[7];for(i=0;i<7;i++){scanf("%lf",&b[i]);}for(i=0;i<7;i++){c[i]=(int)b[i]; d[i]=b[i]-c[i];}...
2018-12-16 18:44:38
411
原创 判断回文并求和
#include<stdio.h>int main(void){int a,m,sum = 0,b,s=0,c;scanf("[%d,%d]",&b,&c);for(m=b; m<=c; m++){a=m;while(a!=0){sum = sum*10 + a%10;a /= 10;}if( sum == m)s=s+m; s...
2018-12-16 18:42:22
274
原创 mid ks 7 计算器
#include <stdio.h>int main(){int n1, n2;char ch;scanf("%d", &n1); // 不管怎样先输入一个数while(1){scanf("%c", &ch);if(ch==’=’){// 如果输入的操作符为等号则直接输出而不必进行后续操作了printf("%d\n", n1);break;}...
2018-12-16 18:40:38
178
原创 求数列中两数之差最大
问题:代码:#include <stdio.h>int main(){int i,n;int max,min;double s[100];scanf("%d",&n);for(i=0;i<n;i++)scanf("%lf",&s[i]);max=0;for(i=1;i<n;i++)if(s[i]>s[max])max=i...
2018-12-02 12:05:35
1517
原创 求勾股数
问题:代码:#include<stdio.h>int main(){int count=0,c,i,j,k;scanf("%d",&c);while(count<4){ k=0;for(i=1;i<c;i++){for(j=1;j<c;j++){if(cc==ii+j*j){count++;k=1;printf(“N0%d:...
2018-12-02 11:59:46
893
原创 大写变小写,求单词个数
#include &lt;stdio.h&gt;int main(){int i=0,count=0,flag=0;char a[100];while ((a[i]=getchar())!=’\n’){i++;}a[i]=’\0’;i=0;while(a[i]!=’\0’){if(a[i]&gt;‘A’&amp;&amp;a[i]&lt;‘z’){flag=
2018-11-28 12:09:44
154
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人