80pts DFS 求助
  • 板块P2841 A*B Problem
  • 楼主diqiuyi奶龙
  • 当前回复4
  • 已保存回复4
  • 发布时间2022/2/17 22:26
  • 上次更新2023/10/28 08:18:03
查看原帖
80pts DFS 求助
324666
diqiuyi奶龙楼主2022/2/17 22:26
#include <bits/stdc++.h>
using namespace std;
#define int __int128
inline int read(int x=0,bool f=1){
	char c=getchar();
	while(c>'9'||c<'0'){if(c=='-')f=0;c=getchar();}
	while(c>='0'&&c<='9'){x=(x<<3)+(x<<1)+c-'0';c=getchar();}
	return f?x:-x;
}
int n,z_o_s[50000000],cnt;
void dfs(int x){
	z_o_s[++cnt]=x;
	if(x>9e18)
		return ;
	dfs((x<<3)+(x<<1));
	dfs((x<<3)+(x<<1)+1);
}
void wrt(__int128 x){
	if(x>9)
		wrt(x/10);
	putchar(x%10+'0');
}
main(){
	dfs(1);
	n=read();
	sort(z_o_s+1,z_o_s+cnt+1);
	for(int i=1;i<=cnt;i++)
		if(!(z_o_s[i]%n)){
			wrt(z_o_s[i]/n);
			putchar(' ');
			wrt(z_o_s[i]);
			putchar('\n');
			return 0;
		}
	return 0;
}

2022/2/17 22:26
加载中...