ACM
sdibt_xhx
这个作者很懒,什么都没留下…
展开
-
【待完善】map的应用,洛谷P2580
天道酬勤,熟能生巧原创 2020-03-24 18:19:10 · 104 阅读 · 0 评论 -
POJ2251 Dungeon Master
天道酬勤 熟能生巧原创 2020-03-22 20:27:28 · 64 阅读 · 0 评论 -
POJ3278-Catch That Cow
天道酬勤 熟能生巧原创 2020-03-22 17:53:42 · 67 阅读 · 0 评论 -
HDU1495非常可乐
天道酬勤 熟能生巧原创 2020-03-21 20:45:26 · 132 阅读 · 0 评论 -
poj1321棋盘问题
题目链接Description在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n &...原创 2020-03-19 07:50:14 · 152 阅读 · 0 评论 -
出栈序列
题目按照1到N的顺序入栈,但是不知道什么时候出栈,给你一列数,问你有没有可能是出栈序列#include<stack>#include<iostream>#include<string>#include<vector>#include<cstring>using namespace std;bool ARR[10007];/...原创 2020-03-17 17:03:22 · 204 阅读 · 0 评论 -
递归实现组合型枚举
题目来源题目描述从 1~n 这 n 个整数中随机选出 m 个,输出所有可能的选择方案。n>0n \gt 0n>0, 0≤m≤n0 \leq m \leq n0≤m≤n, n+(n−m)≤25n+(n-m)\leq 25n+(n−m)≤25。输入描述:两个整数n,m。输出描述:按照从小到大的顺序输出所有方案,每行1个。首先,同一行内的数升序排列,相邻两个数用一个空格隔开。其次...原创 2020-03-17 14:11:19 · 165 阅读 · 0 评论 -
洛谷P1706全排列问题
题目描述输出自然数 1 到 n 所有不重复的排列,即 n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。输入格式一个整数 n。输出格式由 1∼n 组成的所有不重复的数字序列,每行一个序列。每个数字保留 5 个场宽。输入输出样例输入:3输出:1 2 31 3 22 1 32 3 13 1 23 ...原创 2020-03-17 10:16:19 · 327 阅读 · 0 评论 -
埃氏筛
先贴代码#include<stdio.h>int a[1000];int main(){ int i,j; for(i=2;i<=1000;i++)//素数是大于1的,切记。判断可以写成i<=500,省一半循环 for(j=i+i;j<=1000;j+=i){//j是i的倍数 if(a[j]==0)//如果没被标记 a[j]=1;//标记...原创 2020-03-16 11:54:08 · 116 阅读 · 0 评论 -
快速幂
讲完快速乘了,把快速幂的原理一说贴代码就完了快速幂本质貌似是利用二进制优化去减少乘法的运算次数,快速乘是质变(运算方式的改变),而快速幂是量变,运算次数把n变成logn因为最简单的想法就是跑一个for循环,去计算幂 for(i=1;i<50;i++) res = a*a;//计算a的50次方 那么用二进制优化优化之后就是。。。。#include<bits/stdc++....原创 2020-03-16 11:01:34 · 77 阅读 · 0 评论 -
快速乘
因为计算机算加法的时间比算乘法的时间快得多(这貌似是学汇编才能明白原因?反正我不懂)所以我们如果能把乘法尽可能的用加法达到同样的效果,就可以缩短计算时间我们知道,任何一个数(这里指正整数)都可以用二进制表示,所以如果把一个数拆分成他的二进制就是一堆0和1:例如:8(D)=1000(B)16(D) = 10000(B)书面约定可以用字母来表示数字的对应进制D 十进制B 二进制O 八进制...原创 2020-03-16 10:51:20 · 128 阅读 · 0 评论