算法—基础学习
我是涵涵呀
小白成长期
展开
-
题解报告_TSOJ_1350&&1351&&1352
写题解报告前先说一下感受,没什么特别的,RE很难受,TLE很难受,WA很难受,AC贼开心,或许这就是人生吧。 1350分割线—————————————————————————— /*选择那些大晴天的日子,行走在孤单的海岸线,静静地种花给自己看~我们假设把海岸线分为n块,每块的分别标记为1…n,每块都可以种花,每次种花可以选择某个[left,right]的闭区间,每块种上一朵花.经过m次种花操原创 2017-11-13 13:58:10 · 852 阅读 · 0 评论 -
题解报告——约瑟夫环(链表)
题目描述:已知n个人(编号分别为1、2、3,……、n)围坐在一张圆桌周围,从编号为1的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列,依次规律重复下去,直到圆桌周围的人全部出列 输入描述:一行:人数n和间隔数m 输出描述:出列顺序,每个编号之间用一个空格分开 样例输入:9 5 样例输出:5 1 7 4 3 6 9 2 8#include<iostream>原创 2017-12-10 01:11:12 · 380 阅读 · 0 评论 -
高精度乘法———列表法
/*列表法——高精度乘法*/ #include<stdio.h> #include<string.h>#define maxsize 101void compute(char *a,char *b,char *c){ int i,j,carry,sum,m=strlen(a)-1,n=strlen(b)-1; for(i=0;i<=m;i++)a[i]-='0'; f原创 2017-12-07 20:29:07 · 588 阅读 · 0 评论 -
高精度指数运算——分治递归
对于大整数的指数运算,这里给出一种比较高效的策略。 下面的代码是针对500位以内的运算。这个位数可以修改,要想大一点,修改一下数组长度和一些终止条件即可。同时下面的代码是针对2的指数,如果是3,是4以及更大,在了解下面思想之后都是很容易的事。思维上多做一点针对,代码跑起来就会快一点。#include<iostream>#include<string.h>usi...原创 2018-02-03 21:07:13 · 781 阅读 · 0 评论 -
把中缀表达式转化为后缀表达式
#include<iostream>#include<stdio.h>#include<string.h>using namespace std;#define size 100typedef struct stack{ char a[size]; int top;}stack;stack st;char get[size];void tran(char *a){原创 2017-12-13 11:18:56 · 250 阅读 · 0 评论 -
蓝桥解谜—2的次幂表示
问题描述 任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。 将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=27+23+2^0 现在约定幂次用括号来表示,即a^b表示为a(b) 此时,137可表示为:2(7)+2(3)+2(0) 进一步:7=22+2+20 (2^1用2表示) 3=2+2^0 所以最后1...原创 2019-03-15 23:08:09 · 554 阅读 · 0 评论