POJ 2635 The Embarrassed Cryptographer

Comsol 管道导波裂纹检测:从建模到求解的完整流程解析 本文详细解析了使用Comsol Multiphysics进行管道导波裂纹检测的完整仿真流程。从几何建模、材料定义、物理场设置到网格划分与求解后处理,系统阐述了如何构建高保真虚拟模型以模拟导波与裂纹的相互作用。重点分享了激励信号设置、频散效应处理及参数化扫描等实战技巧,旨在帮助工程师与研究人员高效优化无损检测方案,降低实验成本。 阅读详情
The Embarrassed Cryptographer
Time Limit: 2000MS Memory Limit: 65536K
Total Submissions: 8984 Accepted: 2316

Description
The young and very promising cryptographer Odd Even has implemented the security module of a large system with thousands of users, which is now in use in his company. The cryptographic keys are created from the product of two primes, and are believed to be secure because there is no known method for factoring such a product effectively.
What Odd Even did not think of, was that both factors in a key should be large, not just their product. It is now possible that some of the users of the system have weak keys. In a desperate attempt not to be fired, Odd Even secretly goes through all the users keys, to check if they are strong enough. He uses his very poweful Atari, and is especially careful when checking his boss' key.

Input
The input consists of no more than 20 test cases. Each test case is a line with the integers 4 <= K <= 10100 and 2 <= L <= 106. K is the key itself, a product of two primes. L is the wanted minimum size of the factors in the key. The input set is terminated by a case where K = 0 and L = 0.

Output
For each number K, if one of its factors are strictly less than the required L, your program should output "BAD p", where p is the smallest factor in K. Otherwise, it should output "GOOD". Cases should be separated by a line-break.

Sample Input
143 10
143 20
667 20
667 30
2573 30
2573 40
0 0

Sample Output
GOOD
BAD 11
GOOD
BAD 23
GOOD
BAD 31

Source
Nordic 2005
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MAXL 110
#define MAXN 1000010

int prime[MAXN], np;
int vis[MAXN];

void calcPrime(){ //被含有其最小质因数的乘积筛掉
	int i, j;
	memset(vis, 1, sizeof(vis));
	np = 0;
	prime[np++] = 2;
	for (i = 3; i < 1000000; i++){
		if (vis[i]) prime[np++] = i;
		for (j = 0; j < np && prime[j] * i <= 1000000; j++){
			vis[prime[j] * i] = 0;
			if (i % prime[j] == 0) break;
		}
	}
}

int main(){
	int i, j, k, p, len;
	int key[MAXL], nk;
	char s[MAXL];
	calcPrime();
	while(scanf("%s %d", s, &p) != EOF && p != 0 && s[0] != '\0'){
		len = strlen(s);
		for (i = len - 1, nk = 0, j = 0, k = 1; i >= 0; i--){
			j = j + k * (s[i] - '0');
			k *= 10;
			if (k == 1000){
				key[nk++] = j;
				j = 0;
				k = 1;
			}
		}
		if (j > 0) key[nk++] = j;
//		for (j = nk - 1; j >= 0; j--) printf("%d ", key[j]);
//		printf("\n");
		for (i = 0; i < np && prime[i] < p; i++){
			k = 0;
			for (j = nk - 1; j >= 0; j--){
				k = k * 1000 +  key[j];
				k = k % prime[i];
			}
//			printf("prime[%d] = %d, k = %d\n", i, prime[i], k);
			if (k == 0) break;
		}
		if (k == 0) printf("BAD %d\n", prime[i]);
		else printf("GOOD\n");
	}
	return 0;
}
/*
高精度模运算,注意累加器k的值不要超过其类型(int)
*/

Drupal远程代码执行漏洞(CVE-2018-7600)实战复现:从检测到写入WebShell的全过程 本文详细解析了Drupal远程代码执行漏洞(CVE-2018-7600)的实战复现过程,从环境搭建、漏洞检测到WebShell写入的全流程。该高危漏洞影响Drupal 6.x至8.x版本,允许攻击者未经授权执行任意代码。文章提供了多种POC构造方法和高级利用技巧,帮助安全研究人员深入理解漏洞原理并掌握验证技术。 阅读详情

相关推荐

使用 pip 安装 pygame 遇到的问题

今天尝试学习使用 pygame 时,按照我的习惯一发 pip install 下去,本以为很简单的事情,没想到遇到了不少问题,顺手记录一下。 0x01. 无法找到 “SDL.h” 文件 pygame 是使用 SDL 库写就的游戏框架,自然强依赖于 SDL,我的 python@3 是使用 macOS 的 brew 管理器直接安装的,可能由于不是编译安装的问题,缺少了这个库,继续使用 brew 安...

Mitscherlich的博客 8621

【POJ 2635】 The Embarrassed Cryptographer

【POJ 2635】 The Embarrassed Cryptographer 考查素数表就好好玩素数表……卡mod算啥= =TOT 总之 就是敲个表 暴力枚举取余 一发十进制取余(即*10+%TLE……) 看disscuss才知道mod多了影响很大 改成高进制取(既多累几位再取) 985ms 刚才强加了别人的打表代码 跳了1400ms.。。吓死宝宝了 看来学的这种打法挺实用

ACMer' 790

解决Windows 10更新失败错误代码0x80070643

在Windows 10操作系统的更新过程中,用户时常会遇到各类错误代码,这些代码通常成为顺利完成更新的绊脚石。其中,错误代码0x80070643是一个较为常见的更新失败提示,它可能导致系统更新停滞不前。面对这一挑战,本文将详细介绍如何有效解决这一错误,帮助用户顺利完成Windows 10的更新。

nntxthml的博客 1828

POJ 2635.The Embarrassed Cryptographer

题目:http://poj.org/problem?id=2635 AC代码(C++): #include #include #include #include #include #include #include #include #include #define INF 0xfffffff #define MAXN 100105 using namespa

njyexiong的博客 228

技术美术个人笔记(十六)——Houdini到UE的大地形

文章目录关于地形白模制作关于PDG流程 关于地形白模制作 用heightfield noise和笔刷刷出合适的mask做山形叠加: 用remap可快捷反转mask ,用来做平原地区的小型丘陵: 接着用clip切平最低处,用distort制造侵蚀等,对部分地区用笔刷进行微调拓宽峡谷: 用经过sweep打平的曲线以及裁切的各种多面体用heightfield_project投影制作河道和水池,用blur mask并remap的方法拓宽河道 用distort、erode制造合适的弯曲和侵蚀,同理可挖出月牙形

小谁的博客 3180

“华为杯”研究生数学建模竞赛2020年-【华为杯】B题:汽油辛烷值优化建模(附优秀论文)

摘 要:本文通过机器学习算法和数据挖掘技术,建立了汽油辛烷值(RON)损失的预测模型,在保证汽油产品脱硫效果的前提下,以降低汽油辛烷值损失在30%以上为目标,给出每个样本的优化操作条件。针对第一问,对285号和313号原始数据用给定的数据处理规范进行预处理,对每一列变量求期望,得到最终的数据补充到相应的样本编号。针对第二问,首先对数据样本按照最大最小限幅以及拉依达法则进行列变量清洗,通过两轮特征筛选确定变量:结合处理后的数据,针对产品中硫含量、RON损失值用。

getusushu的博客 1251

POJ 2635, The Embarrassed Cryptographer

Time Limit: 2000MSMemory Limit: 65536KTotal Submissions: 5907Accepted: 1402 DescriptionThe young and very promising cryptographer Odd Even has implemented the security module of a large system wi...

weixin_33981932的博客 216

用 ABAP CDS View 把数据稳定抽到 SAP BW/4HANA:从 ODP 架构到增量机制的落地实践

本文探讨了SAP数据仓库中从业务系统抽取数据到SAP BW/4HANA的最佳实践,重点分析了基于ABAP CDS视图的抽取方法。文章指出CDS视图通过注解可实现元数据描述、增量机制的统一管理,替代传统抽取器。详细介绍了ODP架构如何作为抽取基础设施,以及从CDS到BW的完整链路。同时比较了三种增量抽取方式(BW管理时间戳、ODP通用增量、CDC触发器)的适用场景和注意事项,并强调版本兼容性和云环境连接差异对实施的影响。通过实际案例说明合理选择增量策略对数据仓库稳定性的重要性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 331

poj2635 The Embarrassed Cryptographer

我的天~~不算难把,但是有个小细节没考虑好WA很久,那就是,如果在100W的质数表内没找到那个数,应该是输出GOOD的,通过Sample才找到问题 大数(十位进制变千位)+同余模定理+质数快速有效打表(奇数平方递推筛) 用了文件输入输出,赞 #include #include #include #include using namespace std; const int N=101

Rainto的专栏 590

CMOS图像传感器——工作原理

CMOS图像传感器的曝光与读出

沧海一升的博客 9459

SpringBoot集成auth0-jwt插件,实现jwt的token生成、校验,用户登录验证,配置拦截器拦截请求校验token功能

该文章介绍了SpringBoot如何集成auth0-jwt插件,实现jwt的token生成、校验,用户登录验证,配置拦截器拦截请求校验token功能. JWT(JSON Web Token)是一种开放标准(RFC 7519),用于在各方之间安全地传输信息。它以JSON对象的形式存在,并使用数字签名来验证信息的完整性和真实性。JWT由三部分组成,分别是Header、Payload和Signature。

yunnuo的博客 1247

poj 2635 The Embarrassed Cryptographer

线性筛+大整数取mod

我要吃熊猫 319

EMI辐射发射超标案例

EMI辐射发射超标案例

让你爱上电路设计 8503

POJ2635 The Embarrassed Cryptographer

POJ2635 The Embarrassed Cryptographer Time Limit:2000MS Memory Limit:65536K Total Submissions:8683 Accepted:2231 Description The young and very promising cryptograp...

weixin_30663471的博客 81

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

POJ 2635 The Embarrassed Cryptographer

重要提示:不要在意那个图…… 题目大意: 给一个K,范围0到10的100次方,是由两个素数相乘得出的。 再给出一个数L,范围0到10的6次方。 问相乘出K的两个素数是否都大于L,如果有小于的输出BAD+最小的那个素数,没有输出GOOD。 解题思路: 这其实是个模拟题啊…… 1、先打出10的6次方加100以内的素数,为什么呢?防止越界。 2、将K处理...

dhn37379的博客 84

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

poj 2635 The Embarrassed Cryptographer(同余模运算)

http://poj.org/problem?id=2635 题意:给出一个大数K和一个数L,判断是否存在一个小于L的素数能够整除K,存在的话输出最小的那个素数 同余定理:1234%3可以分解为 1%3=1 (1*10+2)%3=0 (0*10+3)%3=0 (0*10+4)%3=1 则1234对3取余得1,大数亦如此,但是本题中需要将这个大数分为多个1000进制的数,10进

大太阳 589

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

POJ-2635 The Embarrassed Cryptographer

Description The young and very promising cryptographer Odd Even has implemented the security module of a large system with thousands of users, which is now in use in his company. The cryptographic

WZJRJ28 420

POJ 2635 The Embarrassed Cryptographer尴尬的译解密码者

2015年5月17日 题目大意,给你一个数K(4 K这个数很大,不能用基本的数据类型处理,应用高精度来做,用一个字符数组来模拟。很容易想到的一个做法是,用高精度模拟出这个数,然后枚举K的因子x(2- L),若K除这个数x等于0,则就找到一个K的因子x,并且这个因子是小于L的,所以输出BAD x。若没有找到一个x能被K整除,则输出GOOD。分析一下时间复杂 度,对于每个K需要枚举的数是

程序人生写程序,又拿程序换酒钱。 805

POJ 2635 The Embarrassed Cryptographer

The Embarrassed Cryptographer Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 11984 Accepted: 3196 Description The young and very promising cryptographer Odd Even has implemente

墨守空城与钟楼 1547
上一篇: HDU 3920 Clear all of them I
下一篇: POJ 1942 Paths on a Grid
cmonkey
博客等级 码龄17年 50粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值