- 博客(15)
- 收藏
- 关注
原创 C语言 G - 二分法+时间复杂度(简单)
蒜头君手上有个长度为nn的数组AA。由于数组实在太大了,所以蒜头君也不知道数组里面有什么数字,所以蒜头君会经常询问整数xx是否在数组AA中。输入格式第一行输入两个整数nn和mm,分别表示数组的长度和查询的次数。接下来一行有nn个整数a_iai。接下来mm行,每行有11个整数xx,表示蒜头君询问的整数。输出格式对于每次查询,如果可以找到,输出"YES",否则输出"NO"。数据范围1 \le n, m \le 10^5, 0 \le x \...
2021-11-16 19:41:18
967
原创 降序桶排序
#include<stdio.h>int main (){ int book[1001],i,j,t; int n; for (i=0;i<=1000;i++) { book[i]=0; }//将所有数组的初始值都赋值为0 scanf("%d",&n); for (i=0;i<n;i++) { scanf("%d",&t); book[t]++; } for (i=1000;i>=0;i--) { for (j=1;..
2021-11-14 20:27:24
477
原创 结构体排序(冒泡排序)
现在分别有五个人的名字和分数,请按照分数从高到低输出他们五个人的名字#include<stdio.h>//定义一个结构体将名字和分数捆绑在一起struct student{ char name [21]; int score;};int main (){ struct student a[100],t; int i,j,n; scanf("%d",&n); for (i=1;i<=n;i++)//循环读入n个人名和分数 { scanf("%s.
2021-11-14 20:22:05
969
2
原创 C-二进制转换为十进制
把一个二进制数转化为十进制数。输入格式第一行一个正整数n\ (1\le n\le 30)n(1≤n≤30),表示二进制数的长度。第二行一个二进制数。输出格式输出一个整数,表示对应的十进制数。Sample Input510101Sample Output21#include <stdio.h>int main () { int a; scanf("%d", &a); int sum = 0; getchar();//循环a...
2021-11-14 20:16:56
532
原创 F-约瑟夫环
传说约瑟夫当年活下来就是靠快速计算这个问题。nn个人围成一圈,编号依次为1,2,3\ldots n1,2,3…n。从第一个人开始报数,数到mm的人出列,再由下一个人重新从11开始报数,数到mm的人再出圈。以此类推,直到所有的人都出列。请输出依次出圈人的编号。输入格式两个整数n,mn,m,1\le n,m \le 1001≤n,m≤100。输出格式nn个用空格分隔的整数,表示出圈人的编号。Sample Input6 4Sample Output4 ...
2021-11-14 20:12:25
637
原创 快速排序-最常用的排序
运用二分的思想去将数列快速排序的方法#include <stdio.h>int a[101],n;void quicksort (int left,int right){ int i,j,t,temp; if (left>right) return; temp=a[left];//temp中存的就是基准数 i=left; j=right; while (i!=j) { //注意顺序,一定要先右后左 while (a[j]>=temp&.
2021-11-14 20:06:13
245
原创 E-简单排序
蒜术师给了你一个1010个整数的序列,要求对其重新排序。排序要求: 奇数在前,偶数在后; 奇数按从大到小排序; 偶数按从小到大排序。 输入格式输入一行,包含1010个整数,彼此以一个空格分开,每个整数的范围是大于等于00,小于等于100100。输出格式按照要求排序后输出一行,包含排序后的1010个整数,数与数之间以一个空格分开。Sample Input4 7 3 13 11 12 0 47 34 98Sample Output4...
2021-11-10 18:53:59
84
原创 D-百钱百鸡(暴力解法)
百钱买百鸡问题:公鸡五文钱一只,母鸡三文钱一只,小鸡三只一文钱,用100100文钱买100100只鸡,公鸡、母鸡、小鸡各买多少只?本程序要求解的问题是:给定一个正整数nn,用nn文钱买nn只鸡,问公鸡、母鸡、小鸡各买多少只?输入格式输入一个正整数nn。输出格式如果有解,依次输出公鸡、母鸡、小鸡的个数(用正整数表示)。如果无解,输出"No Answer."。数据范围1 \le n \le 2001≤n≤200。Sample Input100S...
2021-11-10 18:45:55
421
原创 B-简单暴力计算年月日
请你计算出xx年yy月zz日是xx年的第几天。请注意闰年对答案的影响。输入格式一行三个整数,xx,yy和zz。(1583\le x\le 21001583≤x≤2100)。数据保证输入合法。输出格式一个整数,表示是第几天。Sample Input2016 3 1Sample Output61Sample Input 21900 3 1Sample Output 260#include<stdio.h>int...
2021-11-10 18:40:54
353
原创 A-简单排序
蒜头君给了一个长度为NN(不大于500500)的正整数序列(正整数的值不超过NN),请将其中的所有奇数取出,并按升序输出。输入格式共22行:第11行为NN;第22行为NN个正整数,其间用空格间隔。输出格式增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。#include <stdio.h>int main () { int a[500]; int n; scanf("%d", &n);//输入n个数据 in...
2021-11-10 18:35:06
332
原创 计算n的阶乘
题目描述:输入一个整数n,计算n!输出输入要求:输入一个正整数n<=12输出要求:输出n!的值输入样例:5输出样例:120#include<stdio.h> int main (){ int n; scanf("%d" , &n); int fact =1; int i =1; for ( i=1; i<=n ;i++ ){ fact *= i ; } printf("%d",fact); return 0
2021-11-09 14:26:09
212
原创 逢七过 11.9
标题:逢七过一群人围坐成一圈玩报数游戏游戏规则是:从1开始报数若遇到7的倍数或者个位为七的数则由击掌代替,若犯错则要受到惩罚。#include<stdio.h>int main(){ int n,cnt=0; int sum=0; scanf("%d",&n); if(n>=70){ sum=n/70*16; cnt+=sum;} for(int i=1;i<=n%70;i++){ if(i%7==0||i%10==7){ cnt
2021-11-09 14:19:16
3282
原创 回文字符 10月28日
#include<stdio.h>int main (){ int n,i=0,j,k,a[100]; scanf("%d",&n); while (n>0) { a[i++]=n%10; n/=10; } j=0; k=i-1; while (a[j]==a[k]&&j<=i-1) { j++; k--; } if (j>i-1) printf("Yes\n"); else printf("No\n".
2021-10-28 19:24:11
65
原创 插入排序(10.23)
插入排序描述:给出若干个数,将数字存储在数组中,然后使用插入排序,按照升序排列输出数字。输入一个整数n表示有n个数,接着输入这n个数。按照升序输出这n个数。#include <stdio.h>int main (){ int N,i; scanf("%d",&N); int a[100];由题意可知,需使用数组解题,以及在输入数组...
2021-10-23 20:11:25
258
原创 找大小(10.23)
标题 : 找大小描述:首先输入整数N(0<=N<=1000),紧接着在下一行输入N个数。随后输出这一组数的最大值和最小值。提示:输入这N个数,可以有小数也可以有负数。输出之间用换行隔开。#include<stdio.h>int main (){ int n; scanf("%d",&n); if (n==1){ printf("...
2021-10-23 19:41:06
116
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人