自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (2)
  • 收藏
  • 关注

原创 UVa 500题记录

(⊙_⊙)终于500题了,要继续努力啊

2014-10-30 09:45:47 749

原创 UVa 11063 - B2-Sequence

题目:给你一组数据{ b1,b2,...,bk }中,判断是否任意两个数字的和都不同。分析:数论。计算出所有结果,排序判断相邻结果是否相同即可。说明:500题(⊙_⊙)。#include #include #include using namespace std;int data[111];int sum[5555];int main(){ int n,T = 1

2014-10-30 01:39:36 4198

原创 UVa 1585 - Score

题目:给你一个X和O组成的串,每个O有一个分,为他前面连续的O个数+1,求所有O的分数和。分析:dp,简单题。lis类似物,每个位记录连续的个数即可。说明:快500了(⊙_⊙)。#include #include #include #include using namespace std;char str[81];int score[81];int main()

2014-10-30 00:04:55 6767 3

原创 UVa 11121 - Base -2

题目:计算以-2为基数的数的表示。分析:数论。写出不同位数能表示的数字区间就可以找到规律。            长度为1:[1,1]; 长度为2:[-2,-1]; 长度为3:[2,5];            观察发现,区间长度增长为1,2,4,8,..,2^k,并且奇偶间隔开;            这样可以找到第一个1所在的位置k,然后减去对应的基底(-2^k)寻找下一个1的

2014-10-29 20:55:29 956

原创 UVa 498 - Polly the Polynomial

题目:一直多项式的系数,求不同的x对应多项式的值。分析:数学题,简单题。直接代入多项式计算即可。说明:注意输入格式。#include #include #include #include using namespace std;int temp,c[10000]; int main(){ int n; while ((temp = getchar()) != E

2014-10-29 17:33:12 1826

原创 UVa 455 - Periodic Strings

题目:求一个串的最小循环节。分析:暴力,字符串。数据量较小,直接使用枚举法。            枚举循环节的长度,匹配判断,找到第一组解即为最小。说明:(⊙_⊙)。#include #include #include #include using namespace std;char str[104];int main(){ int n; while (

2014-10-29 15:23:10 10825 35

原创 UVa 10573 - Geometry Paradox

题目:两个相切的小圆r1,r2,同时外切于一个大圆R,已知两小圆的半径r1、r2,            或者过两小圆的被大圆截取的切线段长度t,求大圆面积减去两小圆面积为多少。分析:计算几何。由题意可知如下等式:            R = r1 + r2;            t^2 = 4(R^2 - (r2-r1)^2)= 4r1r2;            整理,

2014-10-29 11:47:33 2919

原创 UVa 11428 - Cubes

题目:给定一个正整数N求出满足N = x^3 - y^3的y最小的正整数对(x,y)。分析:数论,分治。            x^3 - y^3 = (x-y)(x^2 + xy + y^2);            因为,x、y都是正整数,且x > y,则x^3 - y^3 > (x-y)(3y^3);            因为N是1~10000(x-y)与(x^2 + xy

2014-10-28 11:09:12 2171

原创 UVa 10633 - Rare Easy Problem

题目:给定一个数N,去掉末尾的数变成M,现在已知N-M,确定N。分析:数论,简单题。            设N = 10*a + b { 其中0 ≤ b ≤ 9 },则M = a;            N - M = N - a = 9*a + b,枚举所有的b计算出满足条件的N即可。说明:目标500题(⊙_⊙)。#include #include #inclu

2014-10-28 09:40:26 2481

原创 UVa 11064 - Number Theory

题目:求给顶一个数n,的所有的1 ≤ m ≤ n的m,使得gcd(m,n)≠ 1 且 gcd(m,n)≠ m。分析:数论,素数筛法,欧拉函数。             设pi为n的第i个素数因,k1为第i个素数因子的个数,则有:            1 ≤ m ≤ n,gcd(m,n)= 1 的m的个数为欧拉函数;            欧拉函数:φ(n)= n *(1 - 1/

2014-10-28 09:12:07 1837

原创 UVa 10820 - Send a Table

题目:找到整数区间[1,n]中多有的互质数对。分析:数论,筛法,欧拉函数。在筛素数的的同时,直接更新每个数字的欧拉函数。            每个数字一定会被他前面的每个素数筛到,而欧拉函数的计算是n*π(1-1/pi);            其中,pi是n的素数因子,所以可以利用筛法来计算欧拉函数,然后求和;            注意,这时求出的欧拉函数为所有小于n的数m与

2014-10-27 13:09:40 1198

原创 UVa 10950 - Bad Code

题目:有一种编码方式,串只有小写字母构成,每个小写字母对应一个数字,现在给你妆化后的数字串,            问有多少个原串与之对应,注意数字串里可能有一个前导0。分析:搜索。按字母顺序存储映射表,按字母顺序匹配搜索即可。说明:注意最多只输出前100个。#include #include #include #include using namespace std;

2014-10-27 13:02:09 1087

原创 UVa 12377 - Number Coding

题目:一个数可以用一种素数元素的个数表示的形式,43560=23×32×51×112表示成41223;            第一个数是素因子的种类,第二个是每个素因子的个数递增排列;给你一个这种形式的串,            问原来的数可能有几种情况。分析:数论,计数原理,组合数学。            对于每个串,第一个数字一定是素因子的种类数;           

2014-10-25 19:38:55 833

原创 UVa 10101 - Bangla Numbers

题目:将数字数转化成数字加单词的表示形式输出。分析:数论,简单题。直接分成两部分除10000000的商和余数,分别输出即可。说明:注意输入为数字0的情况,还有long long类型防止溢出。#include #include #include using namespace std;void output(long long a){ if (a >= 10000

2014-10-25 18:38:42 2826

原创 UVa 11621 - Small Factors

题目:找到不小于给定数n的,仅以2,3为因数组成的数字。分析:数论,贪心,分治。            利用两根指针,分别代表乘2,与乘3的队列,队列为至今生成的数字,初始为{1};            然后,每取两个指针对应元素*2和*3的值中最小的即为未找到的数字中最小的;            注意,可能生成重复数据,不要存进去(重复数据,一定连续产生)。说明:打表计算

2014-10-25 15:40:24 1500

原创 UVa 836 - Largest Submatrix

题目:给你一个n*n的01矩阵,求里面最大的1组成的矩形的米娜及。分析:dp,单调队列。UVa 1330同题,只是输入格式变了。            我们将问题分解成最大矩形,即求解以k行为底边的图形中的最大矩形,然后合并,求最大的矩形;                      预处理: 求出以每行为底边的每一列从底边开始向上的最大连续1的高度MaxH。 O(N^2) ;

2014-10-24 21:02:43 1276

原创 UVa 825 - Walking on the Safe Side

题目:在一个N*M的网格中,从左上角走到右下角,有一些点不能经过,求最短路的条数。分析:dp,帕斯卡三角。每个点最短的就是走N条向下,M条向右的路。            到达每个点的路径条数为左边和上面的路径之和。说明:注意数据输入格式。#include #include #include #include using namespace std;int smap

2014-10-24 15:30:37 1377

原创 UVa 642 - Word Amalgamation

题目:给你一个单词列表,再给你一些新的单词,输出列表中重新排列能得到此新单词的词。分析:字符串。对每个字符串的字母排序生成新的传f(str),整体排序,用二分来查找即可。说明:注意输出要满足字典序,先排序后查找。#include #include #include #include #include using namespace std;typedef struct

2014-10-24 12:33:42 1158

原创 UVa 10100 - Longest Match

题目:求两组字符串中最大的按顺序出现的相同单词数目。分析:dp,最大公共子序列(LCS)。把单词整个看成一个元素比较即可。            状态:f(i,j)为s1串前i个单词与s2串前j个单词的最大匹配数;            转移:f(i,j)= max(f(i-1,j),f(i,j-1)){ s1[i] ≠ s2[j] };                     

2014-10-23 16:08:30 1554

原创 UVa 11827 - Maximum GCD

题目:给你一组数,求出其中两两最大公约数中最大的值。分析:数论。数据较小,直接枚举即可。说明:注意输入格式。#include #include #include using namespace std;int data[101];int gcd(int a, int b){ return a%b?gcd(b, a%b):b;}int main(){ int

2014-10-23 15:09:24 2231

原创 UVa 11614 - Etruscan Warriors Never Play Chess

题目:有这样一种编排,第一组有1个人,第二组有2个人,..,第k组有k个人,现在有n个人,问能构成前几组。分析:数论,分治。显然这个序列是一个前k项和,那么输出(k+1)*k /2不超过n的最大k值即可;二分或开方。说明:数据较大,用long long。#include #include #include using namespace std;typedef long l

2014-10-22 19:52:16 1299

原创 UVa 11650 - Mirror Clock

题目:求给定时钟的镜面时间。分析:简单题。直接用12:00减去当前时间即可,如果小时小于等于0加上12。说明:没有0:01,只有12:00。#include #include #include using namespace std;int main(){ int n,h,m,a,b; while (~scanf("%d",&n)) for (int i = 0 ;

2014-10-21 10:40:19 859

原创 UVa 10299 - Relatives

题目:计算一个给定数的欧拉函数(1~n-1中和n互质的数的个数)。分析:数论,素数筛法,欧拉函数。            欧拉函数:φ(n)= n *(1 - 1/p1)*(1 - 1/p2)*(1 - 1/p3)*…*(1 - 1/pt);            这里利用筛法打表计算出50000内的素数,因为数据范围是1000000000内的,            所以,不

2014-10-21 10:21:29 1608

原创 UVa 10313 - Pay the Price

题目:求一个整数的重复拆分,限制拆分数的个数。分析:dp,二维多重背包。整数拆分就用背包。              状态:设f(i,j)为j拆分成i个元素的拆法;              转移:f(i,j)= sum(f(i-1,j-k),f(i-1,j-2k),...,f(i-1,j-mk)){ 其中,1 ≤ k ≤ j };             因为输入格式WA好多次,

2014-10-20 22:07:58 1230

原创 UVa 10946 - You want what filled?

题目:统计一个矩阵中所有的连通块的个数,按递减输出。分析:搜索,floodfill。直接利用dfs求解即可。说明:数组开小了╮(╯▽╰)╭。#include #include #include #include #include using namespace std;char maps[55][55];typedef struct tnode{ char ch

2014-10-19 19:03:07 871

原创 UVa 11790 - Murcia's Skyline

题目:给你一排建筑的长度和高度,求最长的上横高度和下降高度。分析:dp,最大上升子序列。说明:有长度,不能直接用单调队列优化。#include #include #include using namespace std;int h[2000],w[2000],u[2000],l[2000];int main(){ int T,n; while (~scanf("%

2014-10-19 17:27:36 1596

原创 UVa 121 - Pipe Fitters

题目:在一个矩形中摆放圆,要求每行或每列的圆是相切的,问最多能放多少个。分析:计算几何,数论。首先计算矩形摆放,然后计算交叉摆放(每行相同和相邻行差1个)求最大即可。说明:╮(╯▽╰)╭当成最大摆放WA好几次。#include #include #include #include using namespace std;//题目方式摆放 int getmin(doubl

2014-10-19 00:28:10 1282

原创 UVa 10116 - Robot Motion

题目:有一个地图,地图上有运行的规则(移动到东西南北四个方向),现在给你起始点,求最后的状态。分析:模拟。直接从起始点出发,按照地图的规则移动即可。记录每个点到达时走的步数,计算环。说明:这题目也很眼熟(⊙_⊙)。#include #include #include #include using namespace std;char maps[100][100];int

2014-10-18 12:31:31 1181

原创 UVa 10773 - Back to Intermediate Math

题目:渡河问题,给你河水宽度,水流速度,求垂直渡河与最快渡河的时间差。分析:物理题,数学题。               最快渡河情况,传垂直运动,垂直渡河,船的水平分速度和水流速度抵消。说明:注意水流速度不能为0。#include #include int main(){ int T; scanf("%d",&T); for (int t = 1 ; t <= T

2014-10-18 12:28:55 1021

原创 UVa 353 - Pesky Palindromes

题目:统计一个串的回文子串的个数。分析:dp,暴力。由于数据较小,直接暴力求解即可。说明:(UVa终于进入前800了)。#include #include #include #include using namespace std;char str[82];char ans[3200][82];int main(){ while (~scanf("%s",str

2014-10-16 22:36:40 1698

原创 UVa 740 - Baudot Data Communication Code

题目:现有一种编码,他们在shift键处于按下和升起时,对应两种编码,其中有2个编码对应shift操作。              给你对应的编码值,求其对应的字符串。分析:模拟,字符串。简单题,标记shift的升降分类处理即可。说明:数据量较小,直接扫描查询即可。#include #include #include #include using namespace st

2014-10-15 16:18:39 972

原创 UVa 10465 - Homer Simpson

题目:有两种食物(数量无限)是Simpson喜欢的,每种食物都需要一个进食时间,现在他有时间t,              问能最多吃多少个食物,时间尽量用完,用不完求最小浪费时间情况下的最多能吃的实物数量。分析:dp,完全背包。放满体积的背包,初始化除了f(0),均为 -oo,然后取正值即可。说明:又见dp。#include #include #include #inclu

2014-10-15 16:09:51 1389

原创 UVa 11233 - Deli Deli

题目:求所给单词的负数形式。分析:模拟。直接按章题意分情况求解即可。说明:按语法也可以(⊙_⊙)。#include #include #include #include using namespace std;char word[22][22],maps[22][22],text[25];int cmp(char *s, char c){ for (int i =

2014-10-15 15:57:20 1664

原创 UVa 11069 - A Graph Problem

题目:给你一个集合{1,2,..,n},计算子集的个数,子集的元素不能相邻且不能再插入元素。分析:dp,动态规划。相邻元素间只能相差3或者2。               动态方程:f(k)= f(k-2)+ f(k-3);{ f(k)为以k为结束元素的集合个数 };               f(n)+ f(n-1)即为结果。说明:Fib类似物。#include #i

2014-10-14 23:54:34 1289

原创 UVa 637 - Booklet Printing

题目:模拟输出n页书的装订打印状态。分析:模拟。页数为(n+3)/ 4,只有n不超过半篇时会输出半篇。说明:好多以前做过的题目(⊙_⊙)。#include #include #include int book[30][4];int main(){ int n; while (~scanf("%d",&n) && n) { int page = (n+3)/4;

2014-10-14 23:12:11 1589

原创 UVa 10297 - Beavergnaw

题目:如果一个底边与高为D的圆柱切去一部分使得,剩下的中心是底边与高为d的圆柱,              和以他们底面为上下地面的圆锥台,已知切去的体积,求d。分析:二分,计算几何。圆锥台体积公式:π*(r^2+r*R+R^2)*h / 3。说明:可以直接用公式求指数计算。#include #include #include #include using namespa

2014-10-14 12:39:19 1362

原创 UVa 10223 - How many nodes ?

题目:气你一个整数n,问多少个节点可以生成n个不同的二叉树。分析:数论,卡特兰数。根据定义即可。说明:#include #include using namespace std;long long Cat[100];int main(){ Cat[0] = 1LL; for (int i = 1 ; i < 20 ; ++ i) Cat[i] = Cat[i

2014-10-14 08:58:09 970

原创 UVa 11734 - Big Number of Teams will Solve This

题目:一个ACM的判题的小程序,两组字符全相同,为正确,比标准多输出空格,为格式错误,其他为错误。分析:字符串。从前向后扫描,如果两字符不同,若A串当前字符不是空格,则错误;               若是空格,则一定不会是正确,滤过空格,看剩余部分,如果剩下字符相同则格式错误;               否则,一定错误;说明:注意结束位置的空格。想起几年前开发自己OJ的日子了

2014-10-12 22:41:53 1091

原创 UVa 12403 - Save Setu

题目:有两种操作:1.当前数值增加;2.输出当前数值。分析:简单题。模拟即可。说明:A+B。#include #include #include using namespace std;string s;int main(){ int n,sum,add; while (cin >> n) { sum = 0; while (n --) { cin

2014-10-12 22:19:33 862

原创 UVa 10701 - Pre, in and post

题目:已知树的前根序,中根序遍历转化成后根序遍历。分析:递归,DS。根据定义递归求解即可。              前根序:根,左子树,右子树;              中根序:左子树,根,右子树;              每次,找到根、左子树、右子树,然后分别递归左子树,右子树,输出根即可。说明:当时进入ACM实验室的第一个题目。#include #include

2014-10-12 01:42:25 2257

SOFA: A Multi-Model Framework for Interactive Physical Simulation

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

2018-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除