PAT——甲级1065:A+B and C(64bit) 乙级1010一元多项式求导
甲级1065
1065 A+B and C (64bit) (20 point(s))
Given three integers A, B and C in [−263,263], you are supposed to tell whether A+B>C.
Input Specification:
The first line of the input gives the positive number of test cases, T (≤10). Then T test cases follow, each consists of a single line containing three integers A, B and C, separated by single spaces.
Output Specification:
For each test case, output in one line
Case #X: trueif A+B>C, orCase #X: falseotherwise, where X is the case number (starting from 1).Sample Input:
3
1 2 3
2 3 4
9223372036854775807 -9223372036854775808 0
Sample Output:
Case #1: false
Case #2: true
Case #3: false
这道题的意思就是要比较A+B与C的大小,看似很简单,但ABC都是64位的,也就是long long型的,A+B之后还可能越界。
重点就是在处理越界问题上。
#include<cstdio>
int main() {
int n;
scanf("%d", &n);
for(int i=;i<=n;i++)
{
long long a, b, c;
scanf("%lld %lld %lld", &a, &b, &c);
long long temp = a + b;
bool flag;
if (a > && b > && temp < ) flag = true;//当正溢出的时候
else if (a < && b < && temp >= ) flag = false;//当负溢出的时候
else if (temp > c)flag = true;//当不溢出的时候
else flag = false;
if (flag) printf("Case #%d: true\n",i);
else printf("Case #%d: false\n",i);
}
return ;
}
代码很好理解,主要记住一点
正越界的时候值是负的。
负越界的时候值是正的。这要根据数据储存的符号位和负数的补码来理解。
乙级的一道题
1010 一元多项式求导 (25 point(s))
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为
0 0。输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
这道题也很简单,但是我的处理方法跟教材不一样。
#include<cstdio> int main()
{
int count = ;
int a, b;
while (scanf("%d%d", &a, &b)!=EOF)
{
if (count == ) {
if (b == ) printf("0 0");
else printf("%d %d", a*b, b - );
}
else if(b) printf(" %d %d", a*b, b - );
count++;
}
return ;
}
我是一次取两位数,再判断是不是第一位,和指数是不是0进行输出。
注意:当只有指数为0的一项时,要输出0,0
并且最后一个还不让输出空格。
教材上是用的大小为1010的数组,储存n次项的系数。然后得到一个求导后的数组,再输出。这样反而有点麻烦了。
在注意一点。。。while()后面别加;哈哈,这种低级错误让我一脸懵逼。
scanf("%d%d", &a, &b)!=EOF一直读取到文档末尾。在命令行界面对应着ctrl+z;
PAT——甲级1065:A+B and C(64bit) 乙级1010一元多项式求导的更多相关文章
- PAT乙级 1010. 一元多项式求导 (25)
1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一 ...
- [C++]PAT乙级1010. 一元多项式求导 (25/25)
/* 1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:x^n(n为整数)的一阶导数为n*x^n-1.) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1 ...
- PAT 乙级 1010 一元多项式求导 (25) C++版
1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一 ...
- PAT 乙级 1010.一元多项式求导 C++/Java
设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为nxn−1.) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数).数字间以空格分隔. ...
- PAT 乙级 -- 1010 -- 一元多项式求导
题目简述 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. 输出 ...
- 【PAT】1010. 一元多项式求导 (25)
1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数 ...
- pat 甲级 1065. A+B and C (64bit) (20)
1065. A+B and C (64bit) (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 HOU, Qiming G ...
- PAT 甲级 1065 A+B and C (64bit) (20 分)(溢出判断)*
1065 A+B and C (64bit) (20 分) Given three integers A, B and C in [−], you are supposed to tell whe ...
- PAT甲级——1065 A+B and C (64bit)
1065 A+B and C (64bit) Given three integers A, B and C in [−263,263], you are supposed to tell ...
随机推荐
- python非字符串与字符产链连接
第一种办法: "hello" +' '+str(110) 输出结果: 'hello 110' 第二种办法: import numpy x = 110 print 'hello(%d ...
- windows安装配置mongodb及图形工具MongoVUE
解压安装包到D:\Program Files\mongodb 建立数据库目录 D:\Program Files\mongodb\data 建立日志目录 D:\Program Files\mongodb ...
- youku服务端
文件结构 config import os IP_PORT = () BACKLOG = BASE_DIR = os.path.dirname(os.path.dirname(__file__)) B ...
- jquery 操作css 选择器
.addClass() 为每个匹配的元素添加指定的样式类名 .addClass(className) className 为每个匹配元素所有增加的一个或多个样式名 .addClass(function ...
- 【学时总结】 ◆学时·IV◆ 数位DP
[学时·IV] 数位DP ■基本策略■ 说白了就是超时和不超时的区别 :) 有一些特别的题与数位有关,但是用一般的枚举算法会超时.这时候就有人提出了--我们可以用动态规划!通过数字前一位和后一位之间的 ...
- Maven - 依赖冲突
依赖冲突有两个规则: 短路优先范例:A -> B -> C -> X-2.0.0A -> D -> X-1.0.0那么A -> X-1.0.0这个版本 先声明优先范 ...
- Docker学习之镜像操作
使用Docker镜像 以下都是Docker镜像的一系列重要名操作,包括获取.查看.搜索.删除.创建.存出或载入.上传等.可使用docker image help命令查看帮助. 1.获取镜像(pull) ...
- Linux crontab 实现秒级定时任务
1 crontab 的延时: 原理:通过延时方法 sleep N 来实现每N秒执行. crontab -e 输入以下语句,然后 :wq 保存退出. * * * * * /usr/bin/curl ...
- Redis ----------String的操作
set key value 设置key对应的值为String类型的value mset key value 一次设置多个 key对应的值 mget key value 一 ...
- stdio中牛逼的写法
用空间换时间的典型 /* * NOTE! This ctype does not handle EOF like the standard C * library is required to. */ ...