C2第四次作业解题报告
看过题解后如果觉得还算有用,请帮忙加点我所在团队博客访问量
http://www.cnblogs.com/newbe/p/4069834.html
http://www.cnblogs.com/newbe/p/4072005.html
求赞求祝福啊!!!
http://www.cnblogs.com/newbe/p/4058097.html
软工老师太狠心,还请可怜一下同课不同命的我们吧~点一下文章末尾的推荐什么的呗,有个回复什么的就更好了!
1、多项式运算
没什么好说的,难点主要在读入部分,其实就是简单的模拟,可以使用sscanf来从字符串中格式化读入东西,每一项的种类有%dx%d";x%d;%dx;x;%d;注意判断下+-号什么的就ok了
2、选排列
老生常谈的题,n只有9,单纯的深搜即可,vis[]记录是否已经出现,res[]记录每一位分别是几,搜到底输出
3、求倍数
第四次相对有点技术含量的题,答案有500位,显然不能大数模板套暴力求解
其实从1<=N<=4999可以看出这是个构造题,就是用指定的digit构造出一个N的倍数的数
构造过程中会出现%N不为0的情况,那么假设某次构造出了一个数他%N为x != 0,那么从这个数继续向下构造时候,假设后位补的是y,那么产生的新的数%N = (x*10 + y)%N
那么可以看出我们可以通过用%N的余数限制时间复杂度,因为对于给定的余数为同一个x的不同的数,其向后继续构造的时候产生的数的余数序列是一样的,相当于做了重复的工作,那么我们只要保证下一个构造出的余数之前没有出现过即可顺利用广搜搞定此题
4、重复数全排列
开始以为是老生常谈的题,但是由于too young,字符串的长度小于100
贴一下超时代码..只能解决短排列
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#define RD(x) scanf("%d",&x)
#define RD2(x,y) scanf("%d%d",&x,&y)
#define clr0(x) memset(x,0,sizeof(x))
typedef long long LL;
int n,vis[1005];
char s[1005],ans[1005];
void dfs(int now){
int i;
if(now == n){
ans[now] = '\0';
puts(ans);
return;
}
int pre=-1; for(i=0;i<n;++i)
{
if(!vis[i] && s[i]!=pre)
{
vis[i]=1;
ans[now]=s[i];
pre=s[i];
dfs(now+1);
vis[i]=0;
}
}
}
void work()
{
scanf("%s",s);
n = strlen(s);
clr0(vis);
dfs(0);
}
int main()
{
work();
return 0;
}
其实也不难解决,只要开个map记录26个字符对应的个数,每次dfs之前确定还有相应字符并吧cnt--,dfs完成后++回来即可
5、矩阵乘法A
又是这种奇怪输入的题,由于中间有空行,还是没什么难的地方,是用sscanf可以轻松解决
C2第四次作业解题报告的更多相关文章
- C2第三次作业解题报告
看过题解后如果觉得还算有用,请帮忙加点我所在团队博客访问量 http://www.cnblogs.com/newbe/ http://www.cnblogs.com/newbe/p/4069834.h ...
- C2第六次作业解题报告
看过题解后如果觉得还算有用,请帮忙加点我所在团队博客访问量 http://www.cnblogs.com/newbe/ http://www.cnblogs.com/newbe/p/4069834.h ...
- C2第七次作业解题报告
看过题解后如果觉得还算有用,请帮忙加点我所在团队博客访问量 http://www.cnblogs.com/newbe/ http://www.cnblogs.com/newbe/p/4069834.h ...
- C2第五次作业解题报告
看过题解后如果觉得还算有用,请帮忙加点我所在团队博客访问量 http://www.cnblogs.com/newbe/ http://www.cnblogs.com/newbe/p/4069834.h ...
- NOIP2012普及组 (四年后的)解题报告 -SilverN
本章施工仍未完成 现在的时间是3.17 0:28,我困得要死 本来今天(昨天?)晚上的计划是把整个四道题的题解写出来,但是到现在还没写完T4的高效算法,简直悲伤. 尝试了用floyd写T4,终于大功告 ...
- 洛谷_Cx的故事_解题报告_第四题70
1.并查集求最小生成树 Code: #include <stdio.h> #include <stdlib.h> struct node { long x,y,c; ...
- 【第40套模拟题】【noip2011_mayan】解题报告【map】【数论】【dfs】
目录:1.潜伏者 [map] 2.Hankson的趣味题[数论]3.mayan游戏[dfs] 题目: 1. 潜伏者(spy.pas/c/cpp)[问题描述]R 国和S 国正陷入战火之中,双方都互派间谍 ...
- BZOJ 1051 最受欢迎的牛 解题报告
题目直接摆在这里! 1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4438 Solved: 2353[S ...
- 【NOIP2015】提高组D1 解题报告
P1978神奇的幻方 Accepted 描述 幻方是一种很神奇的 N ∗ N 矩阵:它由数字 1,2,3, … … , N ∗ N 构成,且每行.每列及两条对角线上的数字之和都相同. 当 N 为奇数时 ...
随机推荐
- 高亮代码显示之HTML困惑
近期做样式库,需要将HTML代码高亮,开始寻找相关的插件. 看到highlight.js,看到它主题样式如此之多,支持语言也如此之多,以为找到了神器.不想这只是痛苦的开始,为了让它支持HTML,我尝试 ...
- 用通俗易懂的大白话讲解Map/Reduce原理
Hadoop简介 Hadoop就是一个实现了Google云计算系统的开源系统,包括并行计算模型Map/Reduce,分布式文件系统HDFS,以及分布式数据库Hbase,同时Hadoop的相关项目也很丰 ...
- 洛谷P3371 【模板】单源最短路径
P3371 [模板]单源最短路径 282通过 1.1K提交 题目提供者HansBug 标签 难度普及/提高- 提交 讨论 题解 最新讨论 不萌也是新,老司机求带 求看,spfa跑模板40分 为什么 ...
- VS2013使用winsock.h和winsock2.h发生冲突后的终极解决方法
问题:彻底无语了,不小心某个文件包含了windows.h头文件,而windows.h文件里面包含着winsock.h文件, 如果你下次使用winsock2.h文件时,位置不对,然后编译器会给你一大堆重 ...
- Spark Streaming源码解读之流数据不断接收全生命周期彻底研究和思考
本期内容 : 数据接收架构设计模式 数据接收源码彻底研究 一.Spark Streaming数据接收设计模式 Spark Streaming接收数据也相似MVC架构: 1. Mode相当于Rece ...
- boost compile
pushd E:\boost\boost_1_59_0 b2 stage --toolset=msvc-12.0 --without-python --stagedir="E:\boost\ ...
- COOKIE&&SESSION
---------------------------------------------------------------------------COOKIE------------------- ...
- MySQL备份学习
备份分类 物理和逻辑备份 物理备份直接拷贝数据库目录和文件,适合数据量大.重要且需要在出现问题时快速恢复的数据库 逻辑备份保存信息包括逻辑数据库结构(数据库表的创建脚本)和内容(插入语句或者分隔符平面 ...
- Python 2.7_Second_try_爬取阳光电影网_获取电影下载地址并写入文件 20161207
1.昨天文章http://www.cnblogs.com/Mr-Cxy/p/6139705.html 是获取电影网站主菜单 然后获取每个菜单下的电影url 2.今天是对电影url 进行再次解析获取下 ...
- 关于 this 和 prototype 的理解
1:this 的理解比较好的书是 <Javascript语言精粹> 平时我们全局写 var a = 1, 其实就是 window.a = 1; var f = function(){}, ...