
UVA Problem 10469 (To Carry or not to Carry) Solution
#include<stdio.h> int main() { unsigned long a,b; while(scanf("%lu %lu",&a,&b)==2) { printf("%lu\n",a^b); } return 0; }
#include<stdio.h> int main() { unsigned long a,b; while(scanf("%lu %lu",&a,&b)==2) { printf("%lu\n",a^b); } return 0; }
#include <stdio.h> int main() { int n, i, q, c, sz, idx, idx2, t1, t2, elteres, ce = 0; while(1) { scanf("%d",&n); if(!n) break; printf("Case %d:\n",++ce); int set[n], i = 0, q = 0; sz = n; while(n--) { scanf("%d",&set[i++]); } scanf("%d",&q); while(q--) { scanf("%d",&c); elteres = 2147483647; for(idx = 0; idx < sz; idx++) { for(idx2 = idx + 1; idx2 < sz; idx2++) { if( abs((set[idx] + set[idx2]) - c) < elteres ) { elteres = abs((set[idx] + set[idx2]) - c); t1 = set[idx]; t2 = set[idx2]; } } } printf("Closest sum to %d is %d.\n",c,t1+t2); } } return 0; }
#include<iostream> #include<cstdio> #include<cmath> using namespace std; int main() { int n; int prime[] = {2,3,5,7,11,13,17,19,23,29,31}; int sum,i,j,count; while(scanf("%d",&n)==1) { if(n==0) break; count =0; for(i=0; i<11; i++) { if(n==prime[i]) count =1; } if(count==1) { if(n==11 || n==23 || n==29) { cout<<"Given number is prime. But, NO perfect number is available." << endl; } else { sum = pow(2,n-1) * (pow (2,n)-1); cout << "Perfect: " << sum <<'!'<<endl; } } else { cout << "Given number is NOT prime! NO perfect number is available."<<endl; } } return 0; }
#include <bits/stdc++.h> using namespace std; int main() { long int r ,a; while(scanf("%ld",&r)==1) { if(r<0) break; if(r==0) printf("0%\n"); else if(r==1) printf("0%\n"); else if(r>=2) { a=r*25; printf("%ld%%\n",a); } } return 0; }
#include<bits/stdc++.h> using namespace std; int main() { int i,j,k,d,sum,num,tc,n,ans,digit; while(cin>>tc) { for(k=1;k<=tc;k++) { cin>>n; num=n,ans=0; while(n>9) { while(n!=0) { digit=n%10; n/=10; ans+=digit*digit; } n=ans; ans=0; } while(n<9) { if(n<=9){ ans=n; break; } } if(ans==1 || ans==7) printf("Case #%lld: %lld is a Happy number.\n",k,num); else printf("Case #%lld: %lld is an Unhappy number.\n",k,num); } } return 0; }
#include<bits/stdc++.h> using namespace std; int main() { unsigned long long n,N; while(cin>>n and n>0) { N=(n*10)/9; if(n%9==0) { cout<<N-1<<" "<<N<<endl; } else { cout<<N<<endl; } } return 0; }
#include <bits/stdc++.h> using namespace std; int a[10000]; int main() { int n,t,i,j; while(scanf("%d",&t)==1) { j=0; if(t==0) return 0; for(i=0;i<t;i++) { scanf("%d",&a[i]); if(a[i] > 0) { j++; a[n++]=a[i]; } } for(i=0;i<n;i++) { if(j==1) printf(" "); j=1; printf("%d",a[i]); } if (j == 0) printf("0"); printf("\n"); } return 0; }
#include <stdio.h> int main() { int n; while((scanf("%d",&n)==1) && n!=0) { if(n>=101) printf("f91(%d) = %d\n",n,n-10); else printf("f91(%d) = 91\n",n); } return 0; }
#include<bits/stdc++.h> bool flag[1000005]; int List[1000005],primes[100000]; int listSize,cnt; using namespace std; void sieve(int n) { cnt=0; primes[cnt++] = 2; for(int i=3; i<=n; i+=2) { if(flag[i] == 0) { primes[cnt++] = i; if(i <= n/i) { for(int j=i*i; j<=n; j+=i*2) flag[j] = 1; } } } return ; } void primeFactorize( int n ) { listSize = 0; for( int i = 0;i<cnt and primes[i]<=(int)sqrt(n);i++ ) { if( n % primes[i] == 0 ) { listSize++; while( n % primes[i] == 0 ) { n /= primes[i]; //List[listSize] = primes[i]; } } } //if( n ==1 ) // break; //List[listSize] = n; //listSize++; return ; } int main() { int n,N; sieve(1000005); while(cin>>n) { if(n==0) break; if(n==1) { cout<<"0"<<endl; continue; } N=n; primeFactorize(N); cout<<N<<" : "<<listSize+1<<endl; } return 0; }
#include <stdio.h> #include <string.h> int main() { char s1[500],s2[500],s1s[500],s2s[500]; int t,i,j,k; scanf("%d ",&t); for(i=0;i<t;i++){ gets(s1); gets(s2); if(strcmp(s1,s2)==0)printf("Case %d: Yes\n",i+1); else { k=0; for(j=0;j<strlen(s1);j++){ if(s1[j]!=' '){ s1s[k]=s1[j]; k++; } } s1s[k]='\0'; k=0; for(j=0;j<strlen(s2);j++){ if(s2s[j]!=' '){ s2s[k]=s2[j]; k++; } } s2s[k]='\0'; if(strcmp(s1s,s2s)==0)printf("Case %d: Output Format Error\n",i+1); else printf("Case %d: Wrong Answer\n",i+1); } } return 0; }
#include<bits/stdc++.h> using namespace std; int main(){ double d,v,u,t1,t2; int t; cin>>t; for(int i=0;i<t;i++){ cin>>d>>v>>u; if( u==0 || v==0 || v>=u ){ printf("Case %d: can't determine\n",i+1); continue; } t1=d/u; t2=d/sqrt(u*u-v*v); printf("Case %d: %.3lf\n",i+1,(t2-t1)); } }
#include <stdio.h> int main() { int t,a,b,i,j=1,sum; scanf("%d",&t); while( t-- ) { sum = 0; scanf("%d %d",&a,&b); for( i=a ; i<=b ; i++) { if(i%2==1) sum += i; } printf("Case %d: %d\n",j,sum); j++; } return 0; }
#include <bits/stdc++.h> using namespace std; int main() { double N,n; int c=1; //long int n; while(cin>>N and N!=0) { n=ceil((sqrt(8*N + 9)+ 3)/2); printf("Case %d: %.lf\n",c++,n); } return 0; }
#include<bits/stdc++.h> using namespace std; int main() { long long int a,b,i=1; while(cin>>a>>b) { if(a==0 && b==0) break; if(a==0 || b==0) { printf("Case %lld: 0\n",i); continue ; } printf("Case %lld: %lld\n",i++,((a*b*(a-1)*(b-1))/4)); } return 0; }
#include <stdio.h> #include<iostream> #include<math.h> #define MAX 10001 using namespace std; bool flag[MAX]; int primes[MAX]; int cnt; void sieve(int n) { cnt=0; primes[cnt++] = 2; for(int i=3; i<=n; i+=2) { if(flag[i] == 0) { primes[cnt++] = i; if(i <= n/i) { for(int j=i*i; j<=n; j+=i*2) flag[j] = 1; } } } return ; } int main() { int tc, n; sieve(MAX); scanf("%d",&tc); while ( tc-- ) { scanf("%d",&n); int ans = primes[0]; for (int i=0; i<cnt && primes[i]<=n; i++) if ( n % primes[i] > n % ans ) printf("v=%d\tm=%d\n",n % primes[i],n % ans); ans = primes[i]; /// printf("%d\n",ans); } return 0; }
#include <iostream> #include <algorithm> #include <set> #include <cmath> using namespace std; int main(void) { int tc, c, r,t,q; set<int> v; set<int>::iterator it; cin >> tc; for (t = 0; t < tc; t++) { cin >> c >> r; v.clear(); cout << "Case #" << t+1 << ":"; if (c == r) { cout << " 0" << endl; continue; } q = c - r; for (int i = 1; i <= sqrt(q); i++) { if (q % i == 0) { if (i > r) v.insert(i); if (q / i > r) v.insert(q/i); } } for ( it = v.begin(); it != v.end(); it++) cout << " " << *it; cout << endl; } return 0; }
#include <bits/stdc++.h> using namespace std; int main() { char s[200],c; int i,l,j; while(gets(s)) { l=strlen(s); for(i=0;i<l;i++) { if(s[i]=='A' ||s[i]=='B' ||s[i]=='C' ) printf("2"); else if(s[i]=='D' ||s[i]=='E' ||s[i]=='F' ) printf("3"); else if(s[i]=='G'||s[i]=='H'||s[i]=='I') printf("4"); else if(s[i]=='J'||s[i]=='K'||s[i]=='L') printf("5"); else if(s[i]=='M'||s[i]=='N'||s[i]=='O') printf("6"); else if(s[i]=='P'||s[i]=='Q'||s[i]=='R'||s[i]=='S') printf("7"); else if(s[i]=='T'||s[i]=='U'||s[i]=='V') printf("8"); else if(s[i]=='W'||s[i]=='X'||s[i]=='Y'||s[i]=='Z') printf("9"); else printf("%c",s[i]); } printf("\n"); } return 0; }
#include <bits/stdc++.h> using namespace std; char in[1002]; int main() { int j,i,count,sum,totat,digit,deg,l,q,d; bool flag; while(1) { flag=true; sum=0; l=strlen(gets(in)); if(l==1 && in[0]=='0')return 0; for(i=0;i<l;i++) sum+=in[i]-'0'; if(sum%9==0) flag=true; else flag=false; count=1;q=0;d=sum; if(flag==true) while(d!=9 and d>9) { while(d!=0) { q+=d%10; d=d/10; } d=q; count++; } if(flag==true) printf("%s is a multiple of 9 and has 9-degree %d.\n",in,count); else if(flag==false) printf("%s is not a multiple of 9.\n",in); } return 0; }
#include <iostream> #include <string.h> using namespace std; int main() { char s[150]; int i,j,total,result,l; while(gets(s)) { total=0; l=strlen(s); for(i=0;i<l;i++) { switch(s[i]) { case 'a': total=total+1; break; case 'b': total=total+2; break; case 'c': total=total+3; break; case 'd': total=total+4; break; case 'e': total=total+5; break; case 'f': total=total+6; break; case 'g': total=total+7; break; case 'h': total=total+8; break; case 'i': total=total+9; break; case 'j': total=total+10; break; case 'k': total=total+11; break; case 'l': total=total+12; break; case 'm': total=total+13; break; case 'n': total=total+14; break; case 'o': total=total+15; break; case 'p': total=total+16; break; case 'q': total=total+17; break; case 'r': total=total+18; break; case 's': total=total+19; break; case 't': total=total+20; break; case 'u': total=total+21; break; case 'v': total=total+22; break; case 'w': total=total+23; break; case 'x': total=total+24; break; case 'y': total=total+25; break; case 'z': total=total+26; break; case 'A': total=total+27; break; case 'B': total=total+28; break; case 'C': total=total+29; break; case 'D': total=total+30; break; case 'E': total=total+31; break; case 'F': total=total+32; break; case 'G': total=total+33; break; case 'H': total=total+34; break; case 'I': total=total+35; break; case 'J': total=total+36; break; case 'K': total=total+37; break; case 'L': total=total+38; break; case 'M': total=total+39; break; case 'N': total=total+40; break; case 'O': total=total+41; break; case 'P': total=total+42; break; case 'Q': total=total+43; break; case 'R': total=total+44; break; case 'S': total=total+45; break; case 'T': total=total+46; break; case 'U': total=total+47; break; case 'V': total=total+48; break; case 'W': total=total+49; break; case 'X': total=total+50; break; case 'Y': total=total+51; break; case 'Z': total=total+52; break; } } result=1; for(i = 2; i <=total/2; i++) if(total % i == 0) { result=0; break; } if(result==1) printf("It is a prime word.\n"); else printf("It is not a prime word.\n"); } return 0; }
#include <bits/stdc++.h> using namespace std; int main() { char input[1002]; int i,j,l,sum; while(1) { gets(input); sum=0; l=strlen(input); if(input[0]=='0' and l==1) break; for(i=0;i<l;i+=2) { sum+=input[i]-'0'; } for(i=1;i<l;i+=2) { sum-=input[i]-'0'; } if((sum) % 11) printf("%s is not a multiple of 11.\n",input); else printf("%s is a multiple of 11.\n",input); } return 0; }