刷题
陪培
让编程成为爱好,坚持才不会落后。
展开
-
LeetCode【94 腐烂的橘子】
采用分批处理的思路,批次即等于时间创建一个队列,队列形式为{1,1},{2,2},{3,3}形式,找到最开始所有腐烂的橘子,将他们压入队列,同时记录队列大小接着从队列第一个元橘子开始处理,判断他的四个方向上有没有新鲜橘子,有则感染,并且将新感染的橘子压入队列,作为下一批处理的对象,由于之前记录了队列大小,故不用担心本批处理会作用于新的被感染橘子,如此往复,直到没有坏橘子时,看看是否依然存在新鲜橘子,若存在则表示感染不到它,返回-1,若不存在,及返回批次(即时间)。class Solution {p.原创 2021-09-03 16:52:29 · 265 阅读 · 6 评论 -
【杨辉三角】
输入一个整数(也代表行数),按如下要求输出数组#include <stdio.h>#include <stdlib.h>int main(){ int n = 0,i=0,j=0; int arr[100][100] = { 0 }; scanf("%d", &n);//行数 for (i = 0; i < n; i++)//赋值 { for (j = 0; j <= i; j++) { if (j == 0 || i == j)原创 2021-05-09 20:49:04 · 101 阅读 · 11 评论 -
有如下一段代码,假定x为9999时,ncount的值为
int nCount=0;while(x){nCount++;x=x&(x-1);}通过观察代码,不难看出,这一段代码求的是十进制数9999转化为二进制数后,其中1的个数十进制 =9999二进制 =100111000011111的个数为8原创 2021-03-23 21:38:47 · 944 阅读 · 14 评论 -
判断字符串s2是否小于字符串s1
char a[]="xyz",b[]={'x','y','z'};if(strlen(a)>strlen(b))printf("a>b\n");elseprintf("a<=b\n");strlen(a)=3,b是数组,元素在内存中是连续存储的,而strlen函数要求字符串要以’\0’结尾,但是b数组中没有’\0’,所以strlen会继续向后查找,无论什么时候停止,strlen(b)的值一定会大于a,所以输出结果为a<=b...原创 2021-03-23 21:31:15 · 651 阅读 · 6 评论 -
【小项目】【C语言】通讯录的实现
编写程序实现通讯录的基本功能,可以做到增,删,查,改,打印通讯录,等等功能test.c#include <stdio.h>#include "contact.h"void menu(){ printf("*********************************************\n"); printf("****** 1. add 2.del ******\n"); printf("****** 3. search原创 2021-03-10 16:17:07 · 276 阅读 · 16 评论 -
小明在一家店铺他看中一件衣服,他了解到,如果今天是“双11”(11月11日)则这件衣服打7折,“双12” (12月12日)则这件衣服打8折,如果有优惠券可以额外减50元(优惠券只能双11或双12使用)
小明在一家店铺他看中一件衣服,他了解到,如果今天是“双11”(11月11日)则这件衣服打7折,“双12” (12月12日)则这件衣服打8折,如果有优惠券可以额外减50元(优惠券只能双11或双12使用),请你编程实现根据不同情况求出小明最后的花钱数。(提示:不要指望商家倒找你钱)。示例 一行,四个数字,第一个数表示小明看中的衣服价格,第二和第三个整数分别表示当天的月份、当天的日期、第四个整数表示是否有优惠券(有优惠券用1表示,无优惠券用0表示)。输入 1000 11 11 1输出 650.00#inc原创 2021-03-04 09:12:11 · 769 阅读 · 5 评论