随笔分类 -  ACM_模拟

十六进制数转八进制 大数转化
摘要:题目:问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1#include#includeusing namespace std;int getDigit(char c){ if(c=='0') return 0; else if(c=='1') return 1; else if(c=='2') return 2; else if(c=='3') return 3; else if(c=='4') return 4; else if(c=='5') 阅读全文

posted @ 2014-03-05 01:53 814jingqi的ACM 阅读(538) 评论(0) 推荐(0)

codeforces#233_div2_B
摘要:题目地址:cf服务器挂了。。233这场比赛没有了题目意思:红球和蓝球放在栈里面 这样定义一次操作: 1先把栈顶所有的红球去掉 2把第一个蓝球变为红色 3再用蓝球将栈补满。直到栈里全部是红球停止操作。 问给定了一个n#include#include#includeusing namespace std;vector v;int all_red(){ for(int i=0;i>n; cin>>s; reverse(s.begin(),s.end()); long long cnt=0; for(int i=0;i#include... 阅读全文

posted @ 2014-03-05 01:20 814jingqi的ACM 阅读(164) 评论(0) 推荐(0)

codeforces#231_div2_B Very Beautiful Number 高精度枚举
摘要:题目地址:cf/394/B题目大意:给定p ,x 求U一个p位数 ,使得把最后一位移到最前面以后,这个数恰好变为原来的x倍。先想了一种解决方案,列一个不定方程。 设最后一位为b 这个数是a 那么就有方程 (a-b)/10+b*10^p=x*a; 这样只需要枚举最后一位就可以了~解出来a后再返回去带进去是不是对的~~ (因为有可能不整除近似计算了) 用JAVA写的 在第18个案例上tle了import java.io.*;import java.util.*;import java.math.*;public class Main { public static boole... 阅读全文

posted @ 2014-02-26 02:12 814jingqi的ACM 阅读(112) 评论(0) 推荐(0)

poj 3623 Best Cow Line, Gold 暴力枚举
摘要:题目地址:poj 3623题目大意:可以从串的两端选取,求尽可能字典序小的串直接暴力 ,关键是两端的字符相同的情形,这个时候要用快排那样的扫描方法。 一旦扫到了head 和tail 相遇甚至是穿过了还是没有找到不同的,这说明是对称的,随便先移除前面 后面 都行。再就是注意一下输出 每80个换行 而且最后一行如果不是刚换过行了还是要换行代码:#include#include#includeusing namespace std;char s[30005];int main(){ int n; cin>>n; char ch; for(int i... 阅读全文

posted @ 2014-02-24 16:58 814jingqi的ACM 阅读(122) 评论(0) 推荐(0)

poj 1562 ,hdu 1241 Oil Deposits dfs,bfs 求连通分支数
摘要:题目地址:http://poj.org/problem?id=1562 http://acm.hdu.edu.cn/showproblem.php?pid=1241直接遍历求连通分支数, dfs方法:#include#include#includeusing namespace std;int map[105][105];int vis[105][105];int n,m;void dfs(int x,int y){ //cout=0&&y=0&&!vis[x][y-1]&&map[x][y-1]) dfs(x,y-1); if(x-1>= 阅读全文

posted @ 2013-09-26 00:35 814jingqi的ACM 阅读(210) 评论(0) 推荐(0)

poj 3984 迷宫问题 dfs 求迷宫路径
摘要:题目地址:http://poj.org/problem?id=3984利用图论中深搜的思想,存在边就是x,y -> x+1,y 还有x,y -> x,y+1 然后仍然是访问未访问的而且不是墙壁的地方。 这样保证不走已经搜索过,走不通的路。唯一一种需要重复访问已经访问的结点的情况是已经无路可走了,只能返回,这样就在栈中将路径取出来,把自己现在的那个先pop掉,然后实现回溯。最后用向量实现栈的自底输出。代码:IDUserProblemResultMemoryTimeLanguageCode LengthSubmit Time12143517814jingqi3984Accepted72 阅读全文

posted @ 2013-09-25 18:03 814jingqi的ACM 阅读(299) 评论(0) 推荐(0)

zoj 3432 Find the Lost Sock (ZOJ Monthly, November 2010)
摘要:题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3432题目思路: 其实就是找那个只出现了1次的字符串。 但是如果用数组或者map记录出现的次数,10w的数量会导致超时,学到一种神奇的方式--直接用异或处理先看代码:#include#include#includeusing namespace std;string s;char sock[9];char ans[9];int main(){ int n; cin>>n; while(cin>>n) { getchar(); n=... 阅读全文

posted @ 2013-09-20 23:21 814jingqi的ACM 阅读(124) 评论(0) 推荐(0)

zoj 4113 Cube Simulation ( ZOJ Monthly, November 2010 )
摘要:题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4113思路:这个就是三维数组的地址和下标之间的对应。 然后涉及到一定的变换 ,我们有一个p【a】 记录在若干次对换之后实际对应的是哪个数。 同时,为了能用find函数找回坐标,我们还要记录反函数(写作pp【a】)然后这个value超过的xyz是不要输出的。代码:#include#include#include#includeusing namespace std;int p[1010];int q[1010];int r[1010];int pp[1010];int 阅读全文

posted @ 2013-09-20 21:58 814jingqi的ACM 阅读(142) 评论(0) 推荐(0)

2013杭电warm up1 Rotation Lock Puzzle
摘要:题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4708首先来学习一个ac的代码:作者http://blog.csdn.net/xingyeyongheng#include#include#include#include#include#include#include#include#define INF 99999999using namespace std;const int MAX=10;int s[MAX][MAX];int main(){ int n; while(scanf("%d",&n),n){ for( 阅读全文

posted @ 2013-09-20 00:13 814jingqi的ACM 阅读(128) 评论(0) 推荐(0)

hdu 3789 奥运排序问题 模拟
摘要:题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3789首先 题目要求只对m个国家排序,然后输出的顺序是给的国家编号的顺序~~!! 不一定是升序` wa了n次在这里然后用sort死做代码:#include#include#include#includeusing namespace std;struct nation{ long double gold; long double all; long double area; int id; int rate1; int rate2; int rat... 阅读全文

posted @ 2013-09-17 14:56 814jingqi的ACM 阅读(235) 评论(0) 推荐(0)

13杭电warmup1 1001 Children's Day
摘要:题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4706用一个三维数组来存贮要表示的矩阵,先画几个特例找规律,记住这个N是倒的...代码:#include#includeusing namespace std;char p[11][11][11];int main(){ for(int i=1;i#include#includeusing namespace std;int a[100][100];bool vis[100][100];void init(){ memset(vis,0,sizeof(vis));}int main(){... 阅读全文

posted @ 2013-09-16 23:37 814jingqi的ACM 阅读(128) 评论(0) 推荐(0)