📄 2773.txt
字号:
Problem Id:2773 User Id:fzk
Memory:4160K Time:125MS
Language:G++ Result:Accepted
Source
#include "stdio.h"
#include "memory.h"
int s[1000010];
bool sign[1000010];
int gcd( int a, int b ) {
int c;
while( b ) {
c = b;
b = a%b;
a = c;
}
return a;
}
int main( ) {
int m, k, i, j, l;
__int64 h;
while( scanf( "%d %d", &m, &k ) == 2 ) {
if( m == 1 ) {
printf( "%d\n", k );
continue;
}
memset( sign, 0, sizeof(bool)*m );
s[0] = 1;
for( i=2, j=1; i<m; i++ )
if( !sign[i] ) {
if( m % i == 0 ) {
for( l=i; l<m; l+=i )
sign[l] = true;
}
else
s[j++] = i;
}
h = m;
k--;
printf( "%I64d\n", h*(k/j) + s[k%j] );
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -