結果

問題 No.414 衝動
コンテスト
ユーザー akakimidori
提出日時 2016-12-09 13:33:50
言語 C90
(gcc 15.2.0)
コンパイル:
gcc-15 -O2 -std=c90 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
AC  
実行時間 5 ms / 1,000 ms
コード長 426 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 762 ms
コンパイル使用メモリ 36,352 KB
最終ジャッジ日時 2026-02-23 23:33:56
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 13
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c: In function 'run':
main.c:25:12: warning: result of '2^4' is 6; did you mean '1 << 4' (16)? [-Wxor-used-as-pow]
   25 |     add^=(2^4);
      |            ^
      |           --
      |           1<<
main.c:25:11: note: you can silence this warning by using a hexadecimal constant (0x2 rather than 2)
   25 |     add^=(2^4);
      |           ^
      |           0x2

ソースコード

diff #
raw source code

#include<stdio.h>

typedef long long int ln;

void run(void){
  ln m;
  scanf("%lld",&m);

  if(m%2==0){
    printf("2 %lld\n",m/2);
    return;
  }
  if(m%3==0){
    printf("3 %lld\n",m/3);
    return;
  }
  ln k=5;
  int add=2;
  while(k*k<=m){
    if(m%k==0){
      printf("%lld %lld\n",k,m/k);
      return;
    }
    k+=add;
    add^=(2^4);
  }
  printf("1 %lld\n",m);
  return;
}

int main(void){
  run();
  return 0;
}
0