uva
liuxinyu666
东华大学17级软件工程学生
展开
-
UVA 202 - Repeating Decimals
第一次在CSDN写博客,有些小兴奋博主只是一名大一学生,若有不足希望可以指出,有其他观点也可以发出来一起探讨啊QwQ代码如下:#include <iostream>#include <cstring>using namespace std;int main(){ int x[3005],y[3005],z[3005]; int a,b,c,n,i;...原创 2018-03-18 16:51:46 · 205 阅读 · 0 评论 -
UVA 343 - What Base Is This?
先求出两个数分别满足的最小进制,之后两个数从最小进制开始判断两数在10进制下是否相等代码如下:#include <bits/stdc++.h>using namespace std;int BaseChange(int base, char m[])//从给定进制转化到十进制{ int a=0,b; for(int i=0; m[i]; ++i) {...原创 2018-04-19 14:42:32 · 443 阅读 · 0 评论 -
UVA 357 - Let Me Count The Ways
题意:给定一个总金额,用题中所给面额求有多少种分法解法:先打表,一个数组储存面额,一个数组储存从1到30000所有面额的分法数目,从最小面额开始,每次循环,某一金额的分法都加上比它小面额的金额的分法代码如下:#include <bits/stdc++.h>using namespace std;int value[5]= {1,5,10,25,50};const int M=3...原创 2018-04-23 19:12:56 · 198 阅读 · 0 评论 -
UVA - 458 The Decoder
天啊,这么水的题我竟然4次才ac==代码如下:#include <stdio.h>int main(){ char ch; while((ch=getchar())!=EOF) putchar((ch-'\n')?ch-7:ch); return 0;}原创 2018-04-23 19:25:23 · 249 阅读 · 0 评论 -
UVA 160 - Factors and Factorials
遍历打表,这题真诡异,我一直WA,把两个100改成101就AC了,还是不清楚有什么区别,谁能帮帮我啊代码如下:#include <bits/stdc++.h>using namespace std;int y[105];void A(int x[])//遍历打表所有100以内质数{ int i,j,k; for(i=2,j=0; i<=101; ++i)...原创 2018-04-19 16:33:40 · 370 阅读 · 0 评论 -
UVA 455 - Periodic Strings
代码如下:#include <bits/stdc++.h>using namespace std;char x[85];int main(){ int n,i,j,l; while(cin>>n) while(n--) { cin>>x; l=st...原创 2018-04-19 17:37:11 · 262 阅读 · 0 评论 -
UVA 105 - The Skyline Problem
代码如下:#include <bits/stdc++.h>using namespace std;int x[10005];int main(){ int a,b,c,d=0,i; memset(x,0,sizeof(x)); while(cin>>a>>b>>c) { if(c>d)...原创 2018-04-19 18:04:31 · 310 阅读 · 0 评论 -
UVA 356 - Square Pegs And Round Holes
求圆的4分之1的结果乘4即可,比较点到圆心距离和半径代码如下:#include <bits/stdc++.h>using namespace std;int n;double A(int x,int y){ return sqrt((n-x)*(n-x)+(n-y)*(n-y));}int main(){ int n,a,b,i,j,flag=0; ...原创 2018-04-19 18:28:07 · 506 阅读 · 0 评论 -
UVA 492 - Pig-Latin
题意:若单词首字母为辅音放到最后输出,每个单词后加ay注意输入,我本想用gets,但一直ce,只好换成getchar了代码如下:#include <bits/stdc++.h>using namespace std;char x[1000005];bool A(char c)//判断是否为字母{ return ((c>='a'&&c<='z...原创 2018-04-24 13:27:22 · 823 阅读 · 0 评论 -
UVA 444 - Encoder and Decoder
题意:输入一组字符串,若为数字字符串,逆序按ascII码解码输出,若为字母字符串,逆序输出ascII码代码如下:#include <bits/stdc++.h>using namespace std;const int M=85;char x[M];int main(){ char ch; int i,j,n=0; while((x[n++]=get...原创 2018-04-26 14:00:37 · 408 阅读 · 0 评论 -
UVA 384 - Slurpys
题意:根据所给要求,判断输入字符串是否满足要求代码如下:#include <bits/stdc++.h>using namespace std;char x[65];bool Slump(char x[65],int &i)//判断字符串是否符合Slump{ if((x[i]=='D'||x[i]=='E')&&x[++i]=='F') ...原创 2018-04-26 15:57:20 · 317 阅读 · 0 评论 -
UVA 490 - Rotating Sentences
题意:将所给字符串顺时针旋转90度输出,水题,直接上代码代码如下:#include <bits/stdc++.h>using namespace std;char x[105][105];int main(){ int i=0,Max=0,Long,n; memset(x,0,sizeof(x)); while(cin.getline(x[i],105...原创 2018-05-05 10:23:40 · 157 阅读 · 0 评论 -
UVA 414 - Machined Surfaces
题意:第一行输入一个n,后面输入n行字符串,每行在左右x之间都存在一些空格,每次操作都使每行空格数减1,直到其中一行没有空格为止,求剩余的总空格数解法:可简化为求总空格数LongSum和最少空格数MinLong,结果即为LongSum-n*MinLong代码如下:#include <bits/stdc++.h>using namespace std;int main(){ ...原创 2018-05-05 11:02:25 · 232 阅读 · 0 评论 -
UVA 441 - Lotto
水题,暴力打表,直接上代码代码如下:#include <bits/stdc++.h>using namespace std;int main(){ int flag=0,n,x[13]; while (cin>>n&&n) { if(flag) cout<<endl; ...原创 2018-05-05 19:44:05 · 255 阅读 · 0 评论 -
UVA 368 - Perfect Cubes
将200以内数的三次方打表,四重循环暴力判断代码如下:#include <bits/stdc++.h>using namespace std;int x[205];int main(){ for(int i=1;i<=200;++i) x[i]=i*i*i; for(int a=6;a<=200;++a) for(i...原创 2018-04-19 13:57:41 · 288 阅读 · 0 评论 -
UVA 445 - Marvelous Mazes
题意看output就差不多理解了代码如下:#include <bits/stdc++.h>using namespace std;int main(){ char ch; int number=0; while((ch=getchar())!=EOF) { if(ch>='0'&&ch<='9') ...原创 2018-04-19 13:40:41 · 171 阅读 · 0 评论 -
UVA 190 - Circle Through Three Points
题意:给出三点坐标,求过三点圆的标准方程和一般方程解法:已知两点(x1,y1)(x2,y2)求直线中垂线方程ax+by+c=0结论:a= x2-x1,b=y2-y1,c=(x1*x1-x2*x2+y1*y1-y2*y2)/2已知两直线方程a1x+b1y+c1=0,a2x+b2y+c2=0求交点结论: ( (b1*c2-b2*c1)/ (a1*b2-b1*a2) , (c1*a2-c2*a1)...原创 2018-04-22 21:37:53 · 269 阅读 · 0 评论 -
UVA 350 - Pseudo-Random Numbers
抽屉算法,代码如下:#include <iostream>#include <cstring>using namespace std;int x[10005];int main(){ int Z,I,L,M,n,number=1; while(cin>>Z>>I>>M>>L&&M)原创 2018-03-22 13:45:26 · 198 阅读 · 0 评论 -
UVA 408 - Uniform Generator
本题解题关键是使用辗转相除法代码如下:#include <iostream>#include <iomanip>using namespace std;int Q(int a,int b){ return a%b?Q(b,a%b):b;}int main(){ int a,b; while(cin>>a>>b)...原创 2018-03-22 14:02:16 · 225 阅读 · 0 评论 -
UVA 100 - The 3n + 1 problem
题意分析:在输入的两个数之间找到循环次数最大的数所对应的次数,循环要求,若为奇数,乘3后加1,若为偶数,除以2,直到1为止。代码如下:#include <iostream>#include <iomanip>using namespace std;int A(int a){ int n=0; while(a-1) //使用三目运算符进行判断,循环直...原创 2018-03-22 14:24:36 · 877 阅读 · 0 评论 -
UVA 371 - Ackermann Functions
同uva100,也是经典的3n+1问题,注意本题数字1运行3次,博主因为这个5次WA,很难受代码如下:#include <iostream>using namespace std;int A(long long a){ int n=0; if(a==1) return 3; while(a-1) //使用三目运算符进行判断,循环直到1为...原创 2018-03-22 14:58:02 · 368 阅读 · 0 评论 -
UVA 694 - The Collatz Sequence
经典的3n+1题,注意使用long long防止数据溢出。代码如下:#include <iostream>#include <iomanip>using namespace std;int A(long long a,long long b){ int n=0; while(a-1) //使用三目运算符进行判断,循环直到1为止 { ...原创 2018-03-22 15:17:18 · 430 阅读 · 0 评论 -
UVA 275 - Expanding Fractions
与UVA202类似,依旧是抽屉算法,代码只需稍作修改即可实现代码如下:#include <iostream>#include <cstring>#include <cstdlib>using namespace std;int main(){ int x[1005],y[1005]; int a,b,n,i; while(ci...原创 2018-03-19 16:07:42 · 709 阅读 · 0 评论 -
UVA 332 - Rational Numbers from Repeating Fractions
本题套用题中所给公式即可(注意只有j=0时才可使用)分子分母约分要使用辗转相除得最大公约数的方法,不然会TLE,不然会TLE,不然会TLE!!!重要的事情说三遍QwQ代码如下:#include <iostream>using namespace std;int Q(int a,int b) //使用辗转相除法求最大公约数{ return a%b?Q(b,a%b):b...原创 2018-03-20 13:34:05 · 872 阅读 · 0 评论 -
UVA 382 - Perfection
因数求和与原数比较的问题,在cout中运用3目运算符较为方便代码如下:#include <iostream>#include <iomanip>using namespace std;int main(){ int a,b,i; cout<<"PERFECTION OUTPUT"<<endl; while(cin&...原创 2018-03-20 14:29:33 · 341 阅读 · 0 评论 -
UVA 496 - Simply Subsets
此题只需算出只属于a数组的元素个数,只属于b数组的元素个数和共同元素个数即可,注意输入两组数组的方式代码如下:#include <iostream>#include <cstring>#include <cstdio>using namespace std;int main(){ int m,n,x,i=0,j,y,z; int a[1...原创 2018-03-20 16:43:38 · 868 阅读 · 1 评论 -
UVA 167 - The Sultan's Successors
八王后问题,回溯算法代码如下:#include <bits/stdc++.h>using namespace std;int number=0,x[10],y[100][10];void D()//存储王后位置 { for(int i=1; i<=8; i++) y[number][i]=x[i]; number++;}int ...原创 2018-04-14 19:59:36 · 364 阅读 · 0 评论 -
UVA 151 - Power Crisis
约瑟夫环变形题因为第一次关第一个,所以可以转化为N-1个电厂,最后留下第12个电厂的问题代码如下:#include <bits/stdc++.h>using namespace std;int main(){ int x,y,i,j; while(cin>>x&&x) for(i=1;; +...原创 2018-04-14 21:39:22 · 325 阅读 · 0 评论 -
UVA 440 - Eeny Meeny Moo
约瑟夫环问题,与UVA 151几乎一样,只是把第2个变为第13个详见UVA 151 - Power Crisis代码如下:#include <bits/stdc++.h>using namespace std;int main(){ int x,y,i,j; while(cin>>x&&x) for(i=1;; ++...原创 2018-04-14 21:50:25 · 430 阅读 · 0 评论 -
UVA 102 - Ecological Bin Packing
暴力枚举嘤嘤嘤用0表示B,1表示G,2表示C代码如下:#include <bits/stdc++.h>using namespace std;int name[6][3]= {0,2,1,0,1,2,2,0,1,2,1,0,1,0,2,1,2,0};int main(){ int x[3][3],i,j,y,Min; while(cin>>x[0...原创 2018-04-14 23:36:43 · 254 阅读 · 0 评论 -
UVA 305 - Joseph
约瑟夫环问题,要在输入之前用一个数组列出所有结果,这样调用不会tle代码如下:#include <bits/stdc++.h>using namespace std;int main(){ int k,i,a,b,j,x[15],s; for(k=1; k<14; ++k) { for(i=k+1;; ++i) {...原创 2018-04-12 16:17:49 · 284 阅读 · 0 评论 -
UVA 438 - The Circumference of the Circle
题意:给出3点坐标,求过三点圆周长解法:用海伦公式求出三角形面积s,因为s=(1/2)absin(a.b),且根据正弦定理,2r=c/sin(a.b),得圆半径r=Πabc/(2s),进而解出圆周长代码如下:#include <bits/stdc++.h>using namespace std;const double pai=3.141592653589793;double ...原创 2018-04-22 19:38:57 · 342 阅读 · 0 评论 -
UVA 750 - 8 Queens Chess Problem
经典的八王后问题,回溯算法代码如下:#include <bits/stdc++.h>using namespace std;int number=0,x[10],y[100][10];void D()//存储王后位置{ int i; for(i =1; i <=8; i++) y[number][i]=x[i]; number...原创 2018-04-12 19:13:34 · 700 阅读 · 0 评论 -
UVA 484 - The Department of Redundancy Department
水题,一个数组存数,一个数组存次数代码如下:#include <bits/stdc++.h>using namespace std;int main(){ int Long=0,flag,n,x[10005],y[10005]; while(cin>>n) { flag=1; for(int i=0; i&l...原创 2018-05-17 13:22:06 · 391 阅读 · 0 评论