ACM-其它
「已注销」
这个作者很懒,什么都没留下…
展开
-
EOJ 2983 蛇行图案
题目简介输出蛇形图案,如: 1 2 3 8 9 4 7 6 5说明直接模拟,用控制方向的常量数组简化程序。#include <stdio.h>#include <stdbool.h>#include <memory.h>int n, x, y, num[11][11];bool inside(int x, int y){ if (1 <= x && x <= n && 1 <=原创 2017-12-04 21:25:28 · 333 阅读 · 0 评论 -
EOJ 2887 指针
https://acm.ecnu.edu.cn/problem/2887/指针确实令人头疼…这题最终还是问了同学才做出来,可能是CSAPP没学好??因为最短的类型是两个字节的char,所以读入内容的时候用的char数组,之后的指针也声明的char*类型.随后移动指针到要读/写的地址,根据输入的类型进行强制转换并修改.#include <bits/stdc++.h>usin...原创 2018-03-29 15:48:22 · 200 阅读 · 0 评论 -
洛谷 1058 立体图
https://www.luogu.org/problemnew/show/P1058应该说就是找规律然后计算坐标,由于覆盖的问题在画图的时候注意顺序可以省去不必要的麻烦. 感觉还挺好看的,放个样例:INPUT3 42 2 1 22 2 1 13 2 1 2OUTPUT......+---+---+...+---+..+---+ / /|../ /|...原创 2018-03-25 21:41:10 · 285 阅读 · 0 评论 -
EOJ 3041 分数的加减运算
题目简介一行由若干个分数(格式:分子 / 分母,1≤分子,分母≤1e9)加减运算组成的表达式,计算并以最简分数形式输出表达式的值 (保证:-1e18≤分子,分母≤1e18)。说明分数模板练习。再重载一个减号似乎是更为方便的做法。#includeusing namespace std;typedef long long ll;string s;int len, po原创 2018-01-28 12:49:23 · 198 阅读 · 0 评论 -
EOJ 3239 最长的等差数列
题目简介给定n(1≤n≤100)个数,从中找出尽可能多的数使得他们能够组成一个最长的等差数列。输出该最长等差数列的长度。注意:当n=1时,构成长度为1的等差数列。说明题目不难,但不加优化可能超时。先排序,枚举前两个数,然后得到公差。这样以后相当于得到了下一个数,继续枚举判断是否相等即可。#include using namespace std;int s[原创 2018-02-02 15:54:49 · 610 阅读 · 0 评论 -
轻量级的巧妙解法
EOJ 1076 染气球 一共有 N 只气球,小强将 N 只气球从左到右依次编号为 1、2、3……N,每次给 2 个整数 a,b (a<=b),小强便骑上他的“小飞鸽 ” 牌电动车从气球 a 开始到气球 b 依次给每个气球涂一次颜色。但是 N 次以后小强已经忘记了第 I 个气球已经涂过几次颜色了,你能帮他算出每个气球被涂过几次颜色吗? N <= 100000da...原创 2018-02-04 12:52:43 · 268 阅读 · 0 评论 -
EOJ 1918/POJ 3444/Rocky Mountain 2007 Wavelet Compression
题目简介The discrete wavelet transform is a popular tool for signal compression. In this problem, your job is to write a program to decompress a one-dimensional signal (a list of integers) that has be原创 2017-12-16 18:35:55 · 292 阅读 · 0 评论 -
EOJ 3024 八进制小数
题目简介写一个程序将 0 与 1 (不包括 0 和 1)之间的八进制数转化为等价的十进制数。例如,八进制数 0.75 就是十进制数 0.953125(7∗8−1+5∗8−2" role="presentation" style="position: relative;">7∗8−1+5∗8−27∗8−1+5∗8−27*8^{-1}原创 2018-02-01 22:05:34 · 783 阅读 · 1 评论 -
EOJ 2973 卡片游戏【二分查找】
题目简介有一种称为 21 点的游戏,在一堆扑克牌中任选 3 张,使 3 张牌的点数的和尽可能大,但不能超过 21 点,否则就 “ 爆 ” 了。现在这个游戏有了新玩法:扑克牌变成了标有数字的卡片,共有 N 张,从中选取 3 张,使得这 3 张卡片上的数字的和在不超过 M 的情况下尽可能大。请你编写一个程序,选取 3 张卡片使得它们的和最大。例如:有 5 张卡片,数字分别为 5、6原创 2018-01-10 22:11:13 · 344 阅读 · 0 评论 -
EOJ 3025 连续正整数之和
题目简介有些正整数可以表示为 n(n>1) 个连续正整数的和,如:15=1+2+3+4+515=4+5+615=7+8给定一个正整数 N,判断其是否可以表示为一组连续正整数的和,输出符合条件的解的组数。说明这题方法很多,也可以滑动窗口法枚举左端点,移动右端点来做。这里采用设未知量,从公式倒推的方法,具体见注释。最后注意特判。#include <stdio.h>#include <math.h>in原创 2017-12-17 22:03:13 · 478 阅读 · 0 评论 -
EOJ 3188 坏掉的彩灯
题目简介Bob 有一串节日彩灯,彩灯共有 4 种颜色(R,B,Y,G 表示),可惜有一些灯泡已经坏掉了( ! 表示)。Bob 并不记得彩灯的序列,只记得这串彩灯的任意 4 个连续的灯泡颜色都不相同。Bob 需要统计每种颜色坏掉的彩灯有多少个。说明0123下标对应RBYG四种颜色。其中tot和ans数组存储每种颜色的灯应有的总数,cnt为实际的总数,两者相减即可。#include <stdio.h>原创 2017-12-31 20:20:35 · 514 阅读 · 0 评论 -
EOJ 2690/HDU 3139/UVa 11689/NCPC 2009 Soda Surpler
题目简介有e+f个空瓶,每c个空瓶换一瓶汽水,问最多换几瓶。说明现有空瓶除以c,得到商为本次兑换的瓶数,加上余数是现在的空瓶数。重复到无法兑换为止。#include <stdio.h>#include <stdlib.h>int main(){ int e,f,c,b,a; while (scanf("%d %d %d", &e, &f, &c) != EOF){原创 2017-12-04 21:16:34 · 268 阅读 · 0 评论 -
EOJ 2536 求和
题目简介A[n] = F[n+2] / F[n+1], F[n]表示斐波那契数列第n项 求出这个数列的前 n 项之和。n <= 13说明数据较小,斐波那契数列直接打表了。不足的是居然没有typedef long long ll;(可能写的时候还不知道typedef是什么)。分数运算处理起来略微麻烦一点。Linux下“%I64d”换成"%lld"。#include <stdio.h>long原创 2017-12-16 17:49:17 · 295 阅读 · 0 评论 -
EOJ 2006 孤独数
题目简介如果一个正整数 a 能够被表示为另外一个正整数 b 与 b 各位数字的和,那么我们认为这个数不是孤独的。现在的问题就是想让你求出所有不大于 1 000 000 的孤独数。比如 46 不是孤独数,因为 46=41+4+1。说明当时写这题时第一次用malloc(并无必要),姑且记录一下。 数组移位也用了非常蠢的方式,在1e6出现次数多的时候还没有定义常量。好在用到了标记的思想。#include原创 2017-12-16 17:42:45 · 983 阅读 · 0 评论 -
EOJ 1849 Cards Game【约瑟夫问题】
题目简介给你 13 张扑克牌,A,2,3,4,5,6,7,8,9,10(T),J,Q,K,要求你将这些牌适当的排列后,能够满足,当你抽出牌顶上的一张后,将按规定切 m 次牌,每次切牌都将牌顶上的一张牌切到牌底。然后再抽出一张牌。使得这些抽出来的牌排成以上的顺序:A,2,3,4,5,6,7,8,9,10(T),J,Q,K。说明写的时候还不知道约瑟夫问题,WA了好多发。 直接模拟即可,也可以使用更方便原创 2017-12-24 22:28:40 · 170 阅读 · 0 评论 -
EOJ 2616 游黄山
https://acm.ecnu.edu.cn/problem/2616/分别对x和y利用前缀和求带权中位数。这类题不是经常遇到,所以记录一下。#include <bits/stdc++.h>using namespace std;struct Point{ double x, y, w;}p[105];double sum[105];bool cmpx...原创 2018-04-22 12:36:43 · 339 阅读 · 0 评论