题解列表

筛选

用最朴素的C语言(不用数组,字符)解决这类问题

解题思路:通过循环的方式使a反复除以10,直至a==0,程序终止,可求得a的位数。再进行分类讨论,因为位数不同情况也不同。注意事项:一定要把数据a存到数据b里,因为循环之后a最终会==0,导致之后输出的结果有误,即00000参考代码:#includeintmain(){inta,

2825: 计算多项式的值

摘要:解题思路:注意事项:参考代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;int main(){    ll n;……

1014: [编程入门]阶乘求和

摘要:解题思路:注意事项:参考代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;int main(){    ll n,……

沙子合并-区间动态规划(详细注释C++)

解题思路:1995年的经典题目,采用对区间进行动态规划的思想。每次合并的代价为两堆沙子数量之和,那么最后一次合并的代价就是所有沙子数量之和,当合成进行最后一次合并的两堆沙子所用的代价最小时,总代价最小。问题就变为选择某种区间划分方法,将[1,n]划分为两个大区间[1,k]和[k+1,n],

1585:链表操作

```cpp#includeusingnamespacestd;typedefstructnode{intshibu;intxubu;node*next;}node,*linklist;voidinitlist(linklist&L){L=newnode;if(L==NULL)return;L->ne

C语言最好理解的方法

解题思路:最简单的思路就是最繁琐的思路,对于直接用分数和条件判断,很容易得出孩子的排名排名为:LWZWZLZLW但是代码实现思路只能是依次进行判断来找出最优解,优化方法也只能是在判断过程中找出最快的判断条件注意事项:优化方式,可以先判断相邻情况,

循环的方式求和Sn

摘要:解题思路:注意到22=2*10+2;222=22*10+2;因而可用双层for循环。注意事项:int sum 要定义到外层循环内部,保证每次循环时sum的初始值都是2.参考代码:#include<st……