首先吐槽一下,ca爷出的这套题到处都是坑,bestcoder变成besthack,Ranting已经掉得不能看了

A题:

链接:http://acm.hdu.edu.cn/showproblem.php?pid=5665

分析:这题题目写错,一wa,最后发现是求的非负数

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <bitset>
#include <cmath>
#include <queue>
#include <stack>
using namespace std;
const int maxn=;
long long a[maxn];
int main()
{
int t,n;
cin>>t;
while(t--)
{
cin>>n;
for(int i=;i<n;i++)
cin>>a[i];
int flag=,flag1=;
for(int i=;i<n;i++)
{
if(a[i]==)
{
flag=;
}else if(a[i]==)
{
flag1=;
}
}
if(flag&&flag1) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}
return ;
}

B题:

链接:http://acm.hdu.edu.cn/showproblem.php?pid=5666

分析:因为p是质数,所以内部线段上不可能有点,直接皮克定理,取模3A

 #include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;
struct point{
long long x,y;
}p[],m[];
long long gcd(long long a,long long b){
long long c;
while(b){
c=a%b;
a=b;
b=c;
}
return a;
}
long long S(point p1,point p2,point p0){
return abs((p1.x-p0.x)*(p2.y-p0.y)-(p1.y-p0.y)*(p2.x-p0.x));
}
int main(){
long long sum,s,ans;
int t;
long long h,q;
cin>>t;
while(t--){
cin>>h>>q;
p[].x=,p[].y=;
p[].x=h,p[].y=;
p[].x=,p[].y=h;
m[].x=abs(p[].x-p[].x);m[].y=abs(p[].y-p[].y);
m[].x=abs(p[].x-p[].x);m[].y=abs(p[].y-p[].y);
m[].x=abs(p[].x-p[].x);m[].y=abs(p[].y-p[].y);
sum=gcd(m[].x,m[].y)+gcd(m[].x,m[].y)+gcd(m[].x,m[].y);
s=S(p[],p[],p[]);
ans=(s-sum+)/%q;
cout<<ans<<endl;
}
return ;
}

然而事实证明了,这个题目会被hack,因为会爆long long,赛后java写了个大数类才过的,皮克定理最后推出公式是(q-1)*(q-2)/2

 import java.math.BigInteger;
import java.util.Scanner; public class Main { @SuppressWarnings("resource")
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
int t;
t=cin.nextInt();
for(int i=0;i<t;i++){
BigInteger p,q,sum1,sum2;
p=cin.nextBigInteger();
q=cin.nextBigInteger();
sum1=p.subtract(BigInteger.valueOf(1)).divide(BigInteger.valueOf(2));
sum2=p.subtract(BigInteger.valueOf(2));
System.out.println(sum1.multiply(sum2).mod(q));
}
} }

Accept

Bestcoder #80的更多相关文章

  1. hdu 5667 BestCoder Round #80 矩阵快速幂

    Sequence  Accepts: 59  Submissions: 650  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536 ...

  2. BestCoder Round #80 1002

    HDU 5666 Segment 题意:给你条斜率为-1,常数项为q(q为质数)的直线,连接原点与直线上整数格点,问你在有多少个格点在形成的无数个三角形内,而不在线段上,结果对P取模. 思路:best ...

  3. Bestcoder Round# 80

    [1003 Sequence] 指数循环节,注意a mod p = 0的情况.此时你的循环节如果返回0,这时你会输出1,而实际上应该是0 #include <algorithm> #inc ...

  4. hdu5666 BestCoder Round #80

    Segment  Accepts: 418  Submissions: 2020  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 6553 ...

  5. BestCoder Round #80 待填坑

    Lucky Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  6. hdoj5667 BestCoder Round #80 【费马小定理(膜拜)+矩阵快速幂+快速幂】

    #include<cstdio> #include<string> #include<iostream> #include<vector> #inclu ...

  7. bestcoder Round #7 前三题题解

    BestCoder Round #7 Start Time : 2014-08-31 19:00:00    End Time : 2014-08-31 21:00:00Contest Type : ...

  8. hdu5634 BestCoder Round #73 (div.1)

    Rikka with Phi  Accepts: 5  Submissions: 66  Time Limit: 16000/8000 MS (Java/Others)  Memory Limit: ...

  9. hdu 4956 Poor Hanamichi BestCoder Round #5(数学题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4956 Poor Hanamichi Time Limit: 2000/1000 MS (Java/Ot ...

随机推荐

  1. 解决oracle数据库连接不上的问题

    今天打开部署好的java开发的网站系统,反应好慢,第一反应就是后台有问题. 查看tomcat一堆的报错信息,重启还是存在. 使用plSql连接数据库看看,登录提示如下:ORA-12514:TNS:监听 ...

  2. apicloud本地测试安卓测试包安装

    1.liutingdeMacBook-Pro:~ js-lt$ which adb 2.liutingdeMacBook-Pro:~ js-lt$ ls 3.liutingdeMacBook-Pro: ...

  3. 在DLL中导出另一静态库中的函数

    开发环境: win7_x64.VS2013 应用场景: 动态库A依赖动态库B,而动态库B又使用了静态库C:有些情况下,我们需要将C从B里面导出,然后提供给A使用. 正文: Step1: 1.新建测试静 ...

  4. Loadrunner脚本录制注意事项(七)

    1.手动走一遍被测业务,达到熟悉理解业务,注意是否和服务器有数据交互,为脚本是否需要关联做准备: 2.浏览器选择IE8/9较好,选择其他浏览器可能会有各种问题.(a.IE设置:内容-设置-去掉所有选项 ...

  5. lucene-SpanNotQuery和SpanOrQuery交迭与全局跨度

    1.在匹配结果中排除相互交迭的跨度 SpanNotQuery构造函数的第一个参数表示要包含的跨度对象,第二个参数表示要排除的跨度对象. 1) SpanNearQuery quick_fox=new S ...

  6. CC_CALLBACK之间的区别

    #define CC_CALLBACK_0(__selector__,__target__, ...) std::bind(&__selector__,__target__, ##__VA_A ...

  7. LightOJ 1030 Discovering Gold(期望)

    Description You are in a cave, a long cave! The cave can be represented by a 1 x N grid. Each cell o ...

  8. 编译filezilla

    编译zilla的时候,需要用到与mysql连接的地方(这里先忽略zila的编译) VC听过mysql connector c++, 下载了1.1.3版本,然后飞安装包,之后从官网上下载boost 把库 ...

  9. Android Studio 提示Error running app: No Android facet found for app

    错误解决办法如下: 可以通过以下几个步骤解决该问题: 1) 点击菜单File -> 选择Project Structure, 或使用快捷键 (Ctrl+Alt+Shift+S) 打开”Proje ...

  10. 10、桥接模式(Bridge)

    桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化.桥接的用意是:将抽象化与实现化解耦,使得二者可以独立变化,像我们常用的JDBC桥DriverManager一样,JDBC进行连接数据库的时 ...