1 条题解
-
0
C :
#include<stdio.h> int main() { int T,i,t; int N[100],M[100]; scanf("%d",&T); while(T--) { i=T; scanf("%d %d",&N[i],&M[i]); t=N[i]; while(1) { if(N[i]%M[i]==0) { t=t+N[i]/M[i]; N[i]=N[i]/M[i]; } else if(N[i]%M[i]<M[i]) { t+=N[i]/M[i]; N[i]=N[i]/M[i]+(N[i]%M[i]); if(N[i]<M[i]) { break; } } } printf("%d\n",t); } return 0; }
C++ :
#include <iostream> #include <cstring> #include <string> #include <cmath> #include <string> #include <fstream> using namespace std; int main() { //ifstream cin; //cin.open("a.in"); //ofstream cout; //cout.open("a.out"); int testcase; cin>>testcase; while(testcase--) { long long initial,exnum; cin>>initial>>exnum; long long count=initial; while(initial>=exnum) { int exchange=initial/exnum; count+=exchange; initial%=exnum; initial+=exchange; } cout<<count<<endl; } return 0; }
Java :
import java.util.Scanner; class Main { public static void main(String[] args) { Scanner reader=new Scanner(System.in); int T=reader.nextInt(); for(int i=0;i<T;i++){ int n=reader.nextInt(); int m=reader.nextInt(); if(n<m){ System.out.println(n); }else{ int sum=n; int k=0; boolean flag=true; while(flag){ if(n-m>=0){ n=n-m+1; k++; }else flag=false; } sum+=k; System.out.println(sum); } } } }
- 1
信息
- ID
- 1335
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者