- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 问题 B: 出租车费(详细讲解)
题目:某市出租车计价规则如下:起步4公里10元,即使你的行程没超过4公里;接下来的4公里,每公里2元;之后每公里2.4元。行程的最后一段即使不到1公里,也当作1公里计费。一个乘客可以根据行程公里数合理安排坐车方式来使自己的打车费最小。例如,整个行程为16公里,乘客应该将行程分成长度相同的两部分,每部分花费18元,总共花费36元。如果坐出租车一次走完全程要花费37.2元。现在给你整个行程的公里数,请你计算坐出租车的最小花费。**输出:**输入包含多组测试数据。每组输入一个正整数n(n<1000
2021-06-28 20:29:39 913
原创 问题 C: 神奇的口袋(背包问题---递归 || 二进制枚举)
题目描述有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40。John现在有n个想要得到的物品,每个物品的体积分别是a1,a2……an。John可以从这些物品中选择一些,如果选出的物体的总体积是40,那么利用这个神奇的口袋,John就可以得到这些物品。现在的问题是,John有多少种不同的选择物品的方式。输入输入的第一行是正整数n (1 <= n <= 20),表示不同的物品的数目。接下来的n行,每行有一个1到40之间的正整数,分别给出a1,a2……an的
2021-06-19 13:23:49 373
原创 问题 B: 数列
题目描述编写一个求斐波那契数列的递归函数,输入n 值,使用该递归函数,输出如下图形(参见样例)。输入输入第一行为样例数m,接下来有m行每行一个整数n,n不超过10。输出对应每个样例输出要求的图形(参见样例格式)。输入:16输出: 0 0 1 1 0 1 1 2 3 0 1 1 2 3 5 8 0 1 1 2 3 5 8 13 210 1 1 2 3 5 8 13 21 34 55思路:金典斐波那契数列,主要是输出格式。对于
2021-06-19 12:55:16 170
原创 通俗理解张量tensor(AI入门)
在深度学习的过程中,我们经常会遇见什么是张量这个名词。那么什么是张量呢?他又用来做什么呢?概念: 几何代数中定义的张量是基于向量和矩阵的推广,通俗一点来理解的话,而我们可以把标量视为零阶张量,矢量视为一阶张量,那么矩阵就是二阶张量。定义:张量的严格定义是利用线性映射来描述的。与矢量相类似,定义由若干坐标系改变时满足一定坐标转化关系的有序数组成的集合为张量。 从几何角度讲, 它是一个真正的几何量,也就是说,它是一个不随参照系的坐标变换(其实就是基向量变化)而变化的东西。最后结果就是基向量与对应基向量上
2021-06-19 11:20:15 1660
原创 插入排序算法详细剖析
插入排序分为:直接插入排序,折半插入排序,希尔排序。这里我们主要分析最简单的:直接插入排序自如其意,插入排序,就是每次读入一个元素的时候,在已经有序的序列中找到他应该插入的位置,然后插入保证当前序列还是有序,如此只能所有的元素都插入完毕。int a[maxn],n;void insertSort(){ for(int i=2;i<=n;i++){ int temp = a[i],j = i; whlie(j>1 && temp
2021-06-14 18:31:10 229
原创 选择排序算法详细剖析
选择排序的基本思想是:每一趟(比如说第i趟)在后面n-i+1个待排序元素中选取关键字最小的元素,作为有序子序列的第i个元素,直到第n-1趟做完,待排序元素只剩下一个,就停止我们这里还拿从小到大排序来讲解。void selectSort(){ for(int i=1;i<=n;i++){ int k = i; for(int j=i;j<=n;j++){ if(a[i] < a[k]){
2021-06-14 18:20:48 124
原创 冒泡排序算法详细剖析
首先我们要知道一个前提知识 ,冒泡排序 属于 交换排序 的一种。那么什么是交换排序?答:根据序列中两个关键字的大小的比较结果来决定是否交换这两个记录在序列中的位置。冒泡排序的思想:1.当我们拿到一个混乱无序的序列的时候,我们可以从前往后依次两两比较相邻元素的值。这里我们假定想要序列从小到大排列。那么每次对比 a[i-1] 与 a[i],若a[i-1] > a[i] 。那么我们就交换这两个元素的位置。原序列:2 5 4 3 1对比 2 < 5 不做处理对比 5 > 4 交换,
2021-06-14 12:06:32 224
原创 《数据结构高分算法笔记》3.6小节——入门模拟->字符串处理
1. A.字符串连接2. 首字母大写4. 字符串的查找删除5. 单词替换6. 字符串去特定字符7. 数组逆置8. 比较字符串9. 编排字符串10. 【字符串】回文串A#include<bits/stdc++.h> using namespace std; int main(){ string s1,s2; while(cin>>s1>>s2){ cout<<s1<<s2<<en
2021-06-13 17:11:08 111 1
原创 字符串内容的替换
字符串string类有成员函数replace()string str;string s1;str.replace(pos,len,s1);//使用s1的长度为len,从str的pos位置开始替换str.replace(pos,len,s1,pos1,len1);//使用s1的子串从pos1开始长度为len1。替换str中从pos开始长度为len的长度...
2021-06-11 21:27:37 444
原创 问题 C: 字符串的查找删除(字符串好题)
题目描述:给定一个短字符串(不含空格),再给定若干字符串,在这些字符串中删除所含有的短字符串。输入输入只有1组数据。输入一个短字符串(不含空格),再输入若干字符串直到文件结束为止。输出删除输入的短字符串(不区分大小写)并去掉空格,输出。//样例//输入in#include int main(){printf(" Hi ");}//输出#cludetma(){prtf("Hi");}思路:根据题意,不区分大小写,即有 在主串中删除 in, In ,IN,iN,
2021-06-11 20:56:11 508
原创 十进制大整数转化为二进制输出
相信一般整数的进制转换大家都会,那么大整数数转换为二进制怎么去做呢?根本存不下,只能用字符串来表示。其实只要我们理解了十进制整数转化为二进制的方法,那么相对大数来讲,思路还是一样的。#include <stdio.h>#include <string.h>int main(){ char m[32]; int len; while(scanf("%s",&m)!=EOF){ len=strlen(m); int sum=1,size=0; char
2021-06-10 18:02:09 973 1
原创 数制转换(一个任意进制的数转换为另一个进制的数)
题目描述:求任意两个不同进制非负整数的转换(2进制~16进制),所给整数在long所能表达的范围之内。不同进制的表示符号为(0,1,…,9,a,b,…,f)或者(0,1,…,9,A,B,…,F)。输入:输入只有一行,包含三个整数a,n,b。a表示其后的n 是a进制整数,b表示欲将a进制整数n转换成b进制整数。a,b是十进制整数,2 =< a,b <= 16。输出:可能有多组测试数据,对于每组数据,输出包含一行,该行有一个整数为转换后的b进制数。输出时字母符号全部用大写表示,即(0,1
2021-06-10 16:49:11 1104
钢筋端面数据集(含标注信息)
2022-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人