#HK192. 素域椭圆曲线数点

    ID: 903 传统题 2000ms 512MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>模板数学多项式 / 形式幂级数数论

素域椭圆曲线数点

素域椭圆曲线数点

题目描述

这是一道模板题。

给定质数 p5p\ge 5a,bFpa,b\in\mathbb{F}_p 满足 4a3+27b204a^3+27b^2\ne 0

求椭圆曲线 y2z=x3+axz2+bz3y^2z=x^3+axz^2+bz^3 的点的个数。满足方程的一组不全为 00(x,y,z)Fp3(x,y,z)\in\mathbb{F}_p^3 称为椭圆曲线上的点,若 λFp\lambda\in\mathbb{F}_pλ0\lambda\ne 0,那么 (x,y,z)(x,y,z)(λx,λy,λz)(\lambda x,\lambda y,\lambda z) 被考虑为同一个点。

输入格式

一行,三个整数 p,a,bp,a,b,用空格分隔。

输出格式

一行,一个正整数表示答案。

样例 1

输入

7 1 3

输出

6

说明

66 个点分别为 (0,1,0),(4,1,1),(4,6,1),(5,0,1),(6,1,1),(6,6,1)(0,1,0),(4,1,1),(4,6,1),(5,0,1),(6,1,1),(6,6,1)

样例 2

输入

318743863128339547 105037157051741234 168782265549960835

输出

318743863620705102

数据范围与提示

保证 5p<2605\le p<2^{60}0a,b<p0\le a,b<p