- 浏览: 155651 次
- 性别:
- 来自: 内蒙古
最新评论
-
linest:
ethi_teye 写道id可能是0开头的,你用int保存再输 ...
pat-1022 Digital Library -
ethi_teye:
id可能是0开头的,你用int保存再输出,这些0就被忽略了。
pat-1022 Digital Library -
lixuanchong:
在lz的代码上稍作修改即可:
#include<iost ...
pat-1010* Radix -
air_sky:
确实。。result=a0*base^0+a1*base^1+ ...
pat-1010* Radix -
linest:
air_sky 写道
关于“方程只有一个正整数解,就可以用二分 ...
pat-1010* Radix
文章列表
1011:
每行找最大值,相乘即可。
#include <iostream>
#include <vector>
using namespace std;
int main()
{
double max;
double res=1;
double a,b,c;
char type;
for(int i=0;i<3;i++)
{
cin>>a;
cin>>b;
cin>>c;
if(a>b)
{
max=a;
type='W';
...
pat-1003* Emergency
- 博客分类:
- pat
1003:
dfs遍历所有路径。
#include <iostream>
#include <vector>
using namespace std;
int city;
int road;
int collect=0;
int maxcollect=0;
int shortnum=0;
int used[501];
int team[501]={0};
int minpass[501]={0};
int shortdis=100000000;
int curdis=0;
int map[501][501]={0};
int S,T; ...
1002:多项式加法
Sample Input
2 1 2.4 0 3.2
2 2 1.5 1 0.5
Sample Output
3 2 1.5 1 2.9 0 3.2
数组保存。
#include<iostream>
using namespace std;
#include<stdio.h>
#include<memory.h>
double exp[1001];
int main()
{
int e;
double c;
int N;
int count=0;
memset(exp,0,sizeof ...
pat-1001 A+B Format
- 博客分类:
- pat
1001:将两数之和转换成3位一逗号
Sample Input
-1000000 9
Sample Output
-999,991
#include<iostream>
using namespace std;
#include<stdio.h>
void format(int num)
{
if(num>=1000)
{
format(num/1000);
printf(",%03d",num%1000);
}
else
{
cout<<num;
}
}
i ...
2165:给出初始位置,给出不可走区域,求能够到达的位置个数。
Sample Input
6 9
....#.
.....#
......
......
......
......
......
#@...#
.#..#.
11 9
.#.........
.#.#######.
.#.#.....#.
.#.#.###.#.
.#.#..@#.#.
.#.#####.#.
.#.......#.
.#########.
...........
11 6
..#..#..#..
..#..#..#..
..#..#..###
..#..#..#@.
..#..#..#..
..#..#..# ...
ZOJ-2833* 交友问题
- 博客分类:
- acm
一群人相互交友。M 1 2 代表1和2成为朋友 Q 1 代表查询1的朋友数。
Sample Input
3 5
M 1 2
Q 1
Q 3
M 2 3
Q 2
5 10
M 3 2
Q 4
M 1 2
Q 4
M 3 2
Q 1
M 3 1
Q 5
M 4 2
Q 4
Sample Output
Case 1:
2
1
3
Case 2:
1
1
3
1
4
思路:并查集问题。
#include<iostream>
using namespace std;
#include<memory.h>
#include<stdio.h>
...
ZOJ-1005* 灌水问题
- 博客分类:
- acm
1005:给定两个不同容量的杯子A,B和目标水量,求倒水序列。设A<B
思路:一种简便方法,只要A为空就倒满A,将A倒向B,B溢出则倒空。直到符合要求。
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main()
{
int A;
int B;
int target;
int inA;
int inB;
while(scanf("%d%d%d",&A,& ...
ZOJ-1078 多进制回文相等
- 博客分类:
- acm
1078:给出一个十进制数。求在2到16进制下构成回文的进制。
Sample Input
17
19
0
Sample Output
Number 17 is palindrom in basis 2 4 16
Number 19 is not a palindrom
思路:简单题。进行进制转换。由于要判断回文,正序和逆序都可。因此采用循环取余即可。
回文判断采用首尾比较的方法。
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
...
ZOJ-1058 货币兑换
- 博客分类:
- acm
1058:一个人要到不同国家。从美国出发,各国汇率已知,最终回到美国。求钱经过一轮兑换后的价值。
算是简单题。但有陷阱。由于钱只能算到分,因此只能一次一次乘,四舍五入。不能先将所有汇率乘在一起,最后乘钱。
四舍五入的写法也要注意一下。
money = (int)(money*100 + 0.5);
money/=100;
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
int N; //测试用例数
int n; //途径国家数
d ...
ZOJ-1151 单词逆序
- 博客分类:
- acm
1151:将一行中的单词全部逆序输出
Sample Input
1
3
I am happy today
To be or not to be
I want to win the practice contest
Sample Output
I ma yppah yadot
oT eb ro ton ot eb
I tnaw ot niw eht ecitcarp tsetnoc
简单题。由于不知道一行到底有多少,整体读完一行再分词处理有可能溢出。
因此采用流处理形式,来一点处理一点,立即输出。用数组缓存单个词,遇到空格或换行就逆序输出。
#include<stdio ...
ZOJ-1067 基本运算题
- 博客分类:
- acm
1067:给出16种RGB值作为基准,将后来的颜色值映射到距离最近的颜色。
距离的定义为
Example
Input
0 0 0
255 255 255
0 0 1
1 1 1
128 0 0
0 128 0
128 128 0
0 0 128
126 168 9
35 86 34
133 41 193
128 0 128
0 128 128
128 128 128
255 0 0
0 1 0
0 0 0
255 255 255
253 254 255
77 79 134
81 218 0
-1 -1 -1
Output
(0,0,0) maps to (0,0,0)
(255, ...
ZOJ-1051 模拟细菌培养
- 博客分类:
- acm
1051:20*20的培养皿。 密度为方格及上下左右共5个方格的和值。每个小方格的取值范围为0~3 所以5个方格密度范围为0~15 现在给出一段长度为16的基因 表明了不同密度对下一天的影响。给出初始状态和模拟天数,求结果。结果表现形式如下
Sample Input:
1
2
0 1 1 1 2 1 0 -1 -1 -1 -2 -2 -3 -3 -3 -3
3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
ZOJ-1049 几何算数题
- 博客分类:
- acm
1049:选一坐标点建房。河水淹没区域是半圆形,每年扩大50平方英里。问几年能淹到房子。
Sample Input:
2
1.0 1.0
25.0 0.0
Sample Output:
Property 1: This property will begin eroding in year 1.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT.
简单题。就是比较圆半径和点到原点距离。
#include<stdio.h>
#include<io ...
ZOJ-1048 基本应用
- 博客分类:
- acm
1048:给出12个月的收入,求月均收入。
Sample Input:
100.00
489.12
12454.12
1234.10
823.05
109.20
5.27
1542.25
839.18
83.99
1295.01
1.75
Sample Output:
$1581.42
非常简单的题。求和除12。。。
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
double sum=0;
double ...
ZOJ-1027* 基因串匹配
- 博客分类:
- acm
1027:给出两串基因判断相似度。不同的匹配关系由下表分值决定
两串基因串长度不一定相等。用-补齐,其中-和-不能匹配。求最大匹配分值。
如
A G T G A T G
- G T T A - G
最大分值:(-3)+5+5+(-2)+5+(-1) +5=14
思路:最优问题,动态规划。关键是找出递推关系,避免重复计算。
出入串A,B 长度分别为i,j 倒着考虑
引入二维数组 opt[i][j] 每一项代表长度i的A串和长度j的B串的最大匹配分值。
最后一位可能的匹配方式有三种,总想法是新最优=最后的匹配分+之前的最优
A为- B为字母 opt[i][j]= ...