c题目
文章平均质量分 69
普通网友
这个作者很懒,什么都没留下…
展开
-
数学问题集(续更)
P2415 集合求和结论:A的所有子集元素之和为s*2^(n-1);s为所以元素和,n为元素个数;#include<bits/stdc++.h>using namespace std;int n,num;long long sum;int main(){ while(cin>>num) { sum+=num; n++; } cout<<(long long)(sum*pow(2,n-1)); //一定要强制类型转换(lon原创 2022-03-12 20:00:14 · 1008 阅读 · 9 评论 -
经典题目集(续更)
P1088 [NOIP2004 普及组] 火星人输入 #1531 2 3 4 5输出 #11 2 4 5 3小知识:全排列 (next_permutation)对于next_permutation函数,其函数原型为:#include <algorithm> bool next_permutation(iterator start,iterator end)当当前序列不存在下一个排列时,函数返回false,否则返回true...原创 2022-02-21 20:00:47 · 218 阅读 · 10 评论 -
蓝桥杯AcWing 题目题解 - 贪心
目录AcWing 1055. 股票买卖 IIAcWing 1235. 付账问题AcWing 1239. 乘积最大AcWing 1247. 后缀表达式AcWing 1055. 股票买卖 II给定一个长度为 N 的数组,数组中的第 i 个数字表示一个给定股票在第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。输入格式第一行包含整数 N,表示数组长度.原创 2022-02-10 00:18:01 · 1253 阅读 · 10 评论 -
蓝桥杯AcWing 题目题解 - 枚举、模拟与排序
AcWing 1210. 连号区间数小明这些天一直在思考这样一个奇怪而有趣的问题:在1∼N的某个排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L,R]里的所有元素(即此排列的第LL个到第RR个元素)递增排序后能得到一个长度为R−L+1的“连续”数列,则称这个区间连号区间。当NN很小的时候,小明可以很快地算出答案,但是当NN变大的时候,问题就不是那么简单了,现在小明需要你的帮助。输入格式第一行是一个正整数N,表示排列的规模。第二行...原创 2022-02-08 21:36:58 · 1309 阅读 · 10 评论 -
蓝桥杯AcWing 题目题解 - 递归与递推
AcWing 92. 递归实现指数型枚举从1~n这n个整数中随机选取任意多个,输出所有可能的选择方案。输入格式输入一个整数n。输出格式每行输出一种方案。同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。对于没有选任何数的方案,输出空行。本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。数据范围1≤n≤15输入样例:3输出样例:322 311 31 21 2 3方法一:暴力#include <iostream>.原创 2022-01-31 13:15:56 · 1333 阅读 · 9 评论 -
C语言指针题目(从遇见&说起)
// 建议先观看上文《C语言 指针(从入门到入土)》巩固基础数组名是元素的首地址,但是有两个例外:1. sizeof(数组名),这里的数组名是表示整个数组的,计算的是整个数组的大小,单位是字节。 2. &数组名,这里的数组名也表示整个数组,取出的是数组的地址 (除上面2中特殊情况外,所有的数组名都是数组首元素的地址) sizeof只关注占用空间的大小,单位是字节sizeof不关注类型sizeof是操作符strlen关注的字符串中\0的为止,计算的是\0之前出现了多少.原创 2022-01-22 18:18:42 · 831 阅读 · 14 评论 -
c语言期末考试-小题
1.在函数中使用并改变实参void swap(int *pa,int *pb) { int temp; temp = *pa; *pa = *pb; *pb = temp; } 2、char* sp, s[10]; sp = "Hello"; 正确,sp为一个字符型指针,通过赋值获得了“hello”的地址;char* sp, s[10]; s = "Hello"; 错误,字符数组赋值,用采用strcpy()......原创 2022-01-04 21:17:07 · 1447 阅读 · 12 评论 -
bool数组的使用 之 A-B (20 分)
传统写法#include<stdio.h>#include<string.h>int main(){ int i=0,j=0; //用于循环和数组下标 char str1[10010]; //用来存储A、B两个字符串 char str2[10010]; //用来存储要删除的字符串字母 int length; //用来存储字符串长度 gets(str1); gets(str2); length = strlen(str2); //这里只需要记住s原创 2022-01-04 12:32:17 · 773 阅读 · 6 评论 -
7-82 打印沙漏 (20 分) (C语言超详细说明)
7-82 打印沙漏 (20 分) (C语言超详细说明)原创 2021-12-30 15:34:33 · 6679 阅读 · 0 评论 -
汉诺塔问题
标准模板void move(char pos1, char pos2){ printf("%c->%c ", pos1, pos2);}void Hanoi(int n, char pos1, char pos2, char pos3)// 1起始位置 2中转位置 3目标位置{ if (n == 1) { move(pos1, pos3); } else { Hanoi(n - 1, pos1, pos2, pos3);//把n-1个盘中放到2 move(po.原创 2021-12-06 21:27:40 · 514 阅读 · 0 评论 -
穷举问题
例题1:需要优先查找型将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?输入格式:输入在一行中给出待换的零钱数额x∈(8,100)。输出格式:要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。输入样例:13结尾无空行输出样例:fen5:2, fen原创 2021-11-26 16:07:52 · 176 阅读 · 0 评论 -
斐波那契数列非递归
例题1:兔子繁衍问题一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?输入格式:输入在一行中给出一个不超过10000的正整数N。输出格式:在一行中输出兔子总数达到N最少需要的月数。输入样例:30结尾无空行输出样例:9#include <stdio.h>int main(){ int a, b, temp,原创 2021-11-26 12:06:56 · 137 阅读 · 0 评论 -
7-27 EDG nb(20 分)
给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按GPLTGPLT....这样的顺序输出,并忽略其它字符。当然,四种字符(不区分大小写)的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按GPLT的顺序打印,直到所有字符都被输出。输入格式:输入在一行中给出一个长度不超过10000的、仅由英文字母构成的非空字符串。输出格式:在一行中按题目要求输出排序后的字符串。题目保证输出非空。输入样例:esDloPGnxjbesalDJJgnibasn..原创 2021-11-20 10:43:43 · 357 阅读 · 3 评论