hdu 5666
来源:互联网 发布:重庆seo公司 编辑:程序博客网 时间:2024/06/05 10:44
题意:给出一个线段x+y= b,然后和0坐标组成的三角形内有多少整数点;
思路: 1 + …… + (n - 2);等差数列求和(n-2)*(n - 1)/2;
运用大数相乘取模;
Segment
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1911 Accepted Submission(s): 713
Problem Description
Input
Output
Sample Input
12 107
Sample Output
0
#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn = 100000 + 10;//char ans[maxn];ll mul(ll a,ll b,ll p){a %= p;b %= p; ll ans = 0;ll t = a;while(b){if(b & 1){ans = (ans + t) % p;}b >>= 1;t = (t <<= 1) % p;}return ans;}ll n,p;int main(){int Tcase;scanf("%d",&Tcase);for(int ii = 1; ii <= Tcase; ii ++)//while( ~ scanf("%I64d%I64d",&n,&p)){scanf("%I64d%I64d",&n,&p);if(n < 0)n = -n;if(n - 2 < 1){cout << 0 << endl;continue;}n -= 2;ll x,y;if((n + 1) % 2){x = n / 2;y = (n + 1);}else {x = (n + 1)/ 2;y = n;}cout << mul(x,y,p) << endl;}return 0;}
0 0
- HDU 5666
- hdu 5666
- hdu 5666
- HDU 5666 Segment
- hdu--5666--Segment
- hdu
- hdu
- HDU
- hdu ()
- hdu
- hdu
- HDU
- HDU
- hdu
- hdu
- HDU
- Hdu
- hdu
- POJ 1852 Ants(模拟+弹性碰撞)
- Spring Boot 学习18--配置ContextPath
- Mybatis 中 Mapper XML 文件 的学习详解
- Linux常用命令
- spring容器的继承
- hdu 5666
- 解决history不能保存历史命令
- 初窥Linux 之 Web开发中我常用的Linux命令
- ES错误记录
- Spring Boot 学习19--修改端口号
- SQL 优化时你会谈些什么?
- Linux运维笔记-文档总结- selinux对文件的控制
- TCL学习之数组(2)
- Android剪裁Uri