首页 > 代码库 > NYOJ1047 欧几里得
NYOJ1047 欧几里得
这题就是个大数减一的题,减一下就能过,n=1时要特殊处理下
#include <stdio.h> #include <string.h> char arr[1002]; int main() { int t, len, jie; scanf("%d", &t); while(t--){ scanf("%s", arr); len = strlen(arr); if(len == 1 && arr[0] == '1'){ puts("1"); continue; } jie = 1; do{ arr[len-1] -= 1; jie = 0; if(arr[len-1] < '0'){ arr[len-1] += 10; jie = 1; } --len; }while(jie); for(int i = 0; ; ++i) if(arr[i] != '0'){ puts(arr + i); break; } } return 0; }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。