Skip to content

Add solution for 1023 #46

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 871 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
871 commits
Select commit Hold shift + click to select a range
d24e60b
refactor 286
fishercoder1534 Nov 27, 2018
3297cdc
refactor 287
fishercoder1534 Nov 28, 2018
3c06067
refactor 288
fishercoder1534 Nov 29, 2018
152fa73
refactor 288
fishercoder1534 Nov 30, 2018
08651ae
refactor 289
fishercoder1534 Nov 30, 2018
8fb0a5e
refactor 292
fishercoder1534 Dec 1, 2018
dcafb85
refactor 293
fishercoder1534 Dec 2, 2018
6db8e26
refactor 294
fishercoder1534 Dec 3, 2018
9d1deb9
refactor 296
fishercoder1534 Dec 4, 2018
4b769d7
refactor 298
fishercoder1534 Dec 5, 2018
829ee6f
refactor 299
fishercoder1534 Dec 6, 2018
ccdc604
refactor 237
fishercoder1534 Dec 7, 2018
6a19059
refactor 301
fishercoder1534 Dec 8, 2018
5b35236
refactor 302
fishercoder1534 Dec 9, 2018
29f1f00
refactor 302
fishercoder1534 Dec 10, 2018
fe3c343
refactor 303
fishercoder1534 Dec 10, 2018
aeb4bcb
refactor 304
fishercoder1534 Dec 11, 2018
045636f
refactor 305
fishercoder1534 Dec 12, 2018
3e83d4b
refactor 306
fishercoder1534 Dec 13, 2018
0869aab
refactor 307
fishercoder1534 Dec 14, 2018
4e93fae
refactor 308
fishercoder1534 Dec 15, 2018
493c33b
refactor 309
fishercoder1534 Dec 16, 2018
49a05a0
refactor 310
fishercoder1534 Dec 17, 2018
eb460f3
refactor 311
fishercoder1534 Dec 18, 2018
8df1dc0
refactor 312
fishercoder1534 Dec 19, 2018
f7d95f2
add 944
fishercoder1534 Dec 19, 2018
0881535
refactor 313
fishercoder1534 Dec 20, 2018
65baf54
add 876
fishercoder1534 Dec 21, 2018
1c5213f
fix LinkedList utils
fishercoder1534 Dec 21, 2018
35a7ec0
add 704
fishercoder1534 Dec 21, 2018
7f596d2
add 705
fishercoder1534 Dec 21, 2018
5e0e078
refactor 314
fishercoder1534 Dec 21, 2018
e3c1027
add 589
fishercoder1534 Dec 21, 2018
b6d5a92
fix build
fishercoder1534 Dec 21, 2018
f9ac2c4
add 590
fishercoder1534 Dec 21, 2018
5773158
add 925
fishercoder1534 Dec 22, 2018
f6f9870
fix build
fishercoder1534 Dec 22, 2018
1ca198d
add 961
fishercoder1534 Dec 23, 2018
b14df48
add 700
fishercoder1534 Dec 23, 2018
466607e
refactor 315
fishercoder1534 Dec 24, 2018
cefa153
add two random questions
fishercoder1534 Dec 25, 2018
8c2e78c
add 868
fishercoder1534 Dec 25, 2018
4e47f8b
refactor 316
fishercoder1534 Dec 25, 2018
f9d5858
add 859
fishercoder1534 Dec 25, 2018
05e064b
refactor 317
fishercoder1534 Dec 26, 2018
44144ea
refactor 318
fishercoder1534 Dec 27, 2018
9654ae0
refactor 319
fishercoder1534 Dec 28, 2018
adb5683
refactor 320
fishercoder1534 Dec 29, 2018
3747a1d
refactor 321
fishercoder1534 Dec 30, 2018
71aa0c1
refactor 323
fishercoder1534 Dec 31, 2018
15dc44a
add two random questions
fishercoder1534 Dec 31, 2018
0655eda
add 965
fishercoder1534 Jan 1, 2019
046def6
add 872
fishercoder1534 Jan 1, 2019
25b2401
add 897
fishercoder1534 Jan 1, 2019
68901dc
Added _789.java (#29)
varunu28 Jan 1, 2019
a78bdac
refactor 324
fishercoder1534 Jan 1, 2019
0bd5f12
add 953
fishercoder1534 Jan 2, 2019
c0b239e
add 908
fishercoder1534 Jan 2, 2019
59dfda6
add 938
fishercoder1534 Jan 2, 2019
4b43549
add 429
fishercoder1534 Jan 2, 2019
40eea70
fix build
fishercoder1534 Jan 2, 2019
9ad3f9c
refactor 328
fishercoder1534 Jan 2, 2019
a8700cb
Added _966.java (#30)
varunu28 Jan 3, 2019
a3ae30e
fix build
fishercoder1534 Jan 3, 2019
11e1c5e
refactor 966
fishercoder1534 Jan 3, 2019
9b84a2f
add 599
fishercoder1534 Jan 3, 2019
804bf9c
refactor 330
fishercoder1534 Jan 4, 2019
a67284e
add 706
fishercoder1534 Jan 5, 2019
e01506a
fix build
fishercoder1534 Jan 5, 2019
1f89c9a
refactor 331
fishercoder1534 Jan 5, 2019
f384beb
fix build
fishercoder1534 Jan 5, 2019
a973cb0
refactor 332
fishercoder1534 Jan 6, 2019
ca5fd5f
add 701
fishercoder1534 Jan 6, 2019
8b97c7b
add one random question
fishercoder1534 Jan 6, 2019
38d642e
add 970
fishercoder1534 Jan 7, 2019
b7cff39
fix build
fishercoder1534 Jan 7, 2019
b43170b
refactor 335
fishercoder1534 Jan 7, 2019
14b7c2d
add 509
fishercoder1534 Jan 8, 2019
28c35ff
refactor 336
fishercoder1534 Jan 8, 2019
e565826
refactor 337
fishercoder1534 Jan 9, 2019
bbf56ba
refactor 338
fishercoder1534 Jan 10, 2019
d35b3b7
Added _394.java (#31)
varunu28 Jan 11, 2019
c361b03
fix build
fishercoder1534 Jan 11, 2019
55c0398
fix build
fishercoder1534 Jan 11, 2019
0270892
refactor 339
fishercoder1534 Jan 11, 2019
02934b3
refactor 397
fishercoder1534 Jan 12, 2019
9de220b
refactor 341
fishercoder1534 Jan 13, 2019
de46123
Added _973.java (#32)
varunu28 Jan 13, 2019
572d2ec
refactor 973
fishercoder1534 Jan 13, 2019
0269a8c
fix typo
fishercoder1534 Jan 13, 2019
3c213fa
Added _976.java (#33)
varunu28 Jan 14, 2019
86f9326
Added _974.java (#34)
varunu28 Jan 14, 2019
5dfbb1d
refactor 342
fishercoder1534 Jan 14, 2019
838be6b
refactor 343
fishercoder1534 Jan 15, 2019
a92e9d1
refactor 344
fishercoder1534 Jan 16, 2019
92b54ff
refactor 345
fishercoder1534 Jan 17, 2019
7282931
refactor 346
fishercoder1534 Jan 18, 2019
69ffc4f
refactor 348
fishercoder1534 Jan 19, 2019
d8a50e0
refactor 349
fishercoder1534 Jan 20, 2019
c874518
add 977
fishercoder1534 Jan 20, 2019
b772914
refactor 351
fishercoder1534 Jan 21, 2019
92f32d6
refactor 352
fishercoder1534 Jan 22, 2019
e929509
refactor 235
fishercoder1534 Jan 22, 2019
d7dcfe4
refactor 340
fishercoder1534 Jan 22, 2019
0fed6ce
fix build
fishercoder1534 Jan 22, 2019
b7da55c
add 937
fishercoder1534 Jan 23, 2019
b6d18b8
clean up 236
fishercoder1534 Jan 23, 2019
3985a99
refactor 354
fishercoder1534 Jan 23, 2019
fa914b8
refactor 356
fishercoder1534 Jan 25, 2019
98ee158
refactor 357
fishercoder1534 Jan 26, 2019
859adb3
refactor 358
fishercoder1534 Jan 28, 2019
99613a5
refactor 359
fishercoder1534 Jan 29, 2019
4e4f547
refactor 360
fishercoder1534 Jan 30, 2019
bba1bde
refactor 361
fishercoder1534 Jan 31, 2019
6b4d02b
refactor 363
fishercoder1534 Feb 1, 2019
5397824
refactor 364
fishercoder1534 Feb 2, 2019
8e1b24f
refactor 365
fishercoder1534 Feb 3, 2019
86d1d47
add 985
fishercoder1534 Feb 3, 2019
885c63c
refactor 366
fishercoder1534 Feb 4, 2019
f9b1444
refactor 367
fishercoder1534 Feb 6, 2019
b0a7b4d
refactor 368
fishercoder1534 Feb 6, 2019
7ec5460
refactor 369
fishercoder1534 Feb 7, 2019
c766fe4
refactor 371
fishercoder1534 Feb 8, 2019
a9e5df5
refactor 372
fishercoder1534 Feb 9, 2019
a32fa1b
refactor 393
fishercoder1534 Feb 10, 2019
2839e2a
refactor 373
fishercoder1534 Feb 10, 2019
54a66f2
refactor 374
fishercoder1534 Feb 11, 2019
74dc61a
refactor 376
fishercoder1534 Feb 12, 2019
cd295c0
refactor 379
fishercoder1534 Feb 13, 2019
ade79b1
refactor 380
fishercoder1534 Feb 14, 2019
13ae2b6
refactor 381
fishercoder1534 Feb 15, 2019
38edb0c
refactor 381
fishercoder1534 Feb 15, 2019
81c9ec7
add 989
fishercoder1534 Feb 15, 2019
6ab5092
add 703
fishercoder1534 Feb 15, 2019
dd1f14b
fix build
fishercoder1534 Feb 15, 2019
24df592
fix build
fishercoder1534 Feb 15, 2019
03bb323
refactor 382
fishercoder1534 Feb 16, 2019
9c21417
refactor 384
fishercoder1534 Feb 17, 2019
a9592ed
add 993
fishercoder1534 Feb 17, 2019
b0983ef
refactor 385
fishercoder1534 Feb 18, 2019
5efbe97
refactor 386
fishercoder1534 Feb 19, 2019
349e320
add 994
fishercoder1534 Feb 19, 2019
2b0b658
refactor 387
fishercoder1534 Feb 20, 2019
0388c5e
refactor 388
fishercoder1534 Feb 22, 2019
c0124dd
remove donate page since it's 404 already
fishercoder1534 Feb 22, 2019
bd2c0d8
refactor 389
fishercoder1534 Feb 23, 2019
d941657
add 840
fishercoder1534 Feb 23, 2019
83911d2
add 860
fishercoder1534 Feb 24, 2019
865e5b1
refactor 390
fishercoder1534 Feb 24, 2019
11e5f1c
add 997
fishercoder1534 Feb 24, 2019
093d87b
add 999
fishercoder1534 Feb 24, 2019
d71ebdf
add 900
fishercoder1534 Feb 24, 2019
0689fa6
add 942
fishercoder1534 Feb 24, 2019
8d5a662
add 950
fishercoder1534 Feb 25, 2019
913eb76
add 890
fishercoder1534 Feb 25, 2019
f7d398a
refactor 391
fishercoder1534 Feb 25, 2019
9ea3662
refactor 392
fishercoder1534 Feb 26, 2019
9703a71
refactor 394
fishercoder1534 Feb 27, 2019
0459666
refactor 398
fishercoder1534 Mar 1, 2019
ef093a9
refactor 399
fishercoder1534 Mar 1, 2019
d7c0728
refactor 400
fishercoder1534 Mar 2, 2019
9057442
Update _35.java (#36)
Mar 3, 2019
2ae6175
refactor 401
fishercoder1534 Mar 3, 2019
26c7e48
Update _66.java (#37)
Mar 4, 2019
65745af
refactor 402
fishercoder1534 Mar 4, 2019
2d8d7a8
add 1002
fishercoder1534 Mar 5, 2019
ecd7f7b
refactor 403
fishercoder1534 Mar 5, 2019
20f20c6
refactor 404
fishercoder1534 Mar 6, 2019
e34296d
refactor 405
fishercoder1534 Mar 7, 2019
c50f1ee
refactor 406
fishercoder1534 Mar 8, 2019
708fe3e
refactor 401
fishercoder1534 Mar 8, 2019
96025bc
refactor 407
fishercoder1534 Mar 9, 2019
3e05583
refactor 408
fishercoder1534 Mar 10, 2019
05eab3a
refactor 434
fishercoder1534 Mar 11, 2019
6baff82
Update README.md (#41)
Mar 11, 2019
a4f05f8
refactor 410
fishercoder1534 Mar 11, 2019
e45e928
refactor 409
fishercoder1534 Mar 11, 2019
b87ebf6
Update _189.java (#40)
Mar 12, 2019
2a515c2
refactor 189
fishercoder1534 Mar 12, 2019
372a76f
Update _693.java (#42)
Mar 12, 2019
34bec61
fix build
fishercoder1534 Mar 12, 2019
9b54e4b
fix build
fishercoder1534 Mar 12, 2019
69e2401
refactor 693
fishercoder1534 Mar 12, 2019
9dea544
refactor 411
fishercoder1534 Mar 12, 2019
1a72273
update .gitignore
fishercoder1534 Mar 12, 2019
b6c00b2
update README.md
fishercoder1534 Mar 12, 2019
8a74f49
add c++ solution for 1
fishercoder1534 Mar 13, 2019
5622cd0
refactor 1
fishercoder1534 Mar 13, 2019
44b2ef2
refactor 1
fishercoder1534 Mar 13, 2019
38753de
refactor 412
fishercoder1534 Mar 13, 2019
63da990
refactor 413
fishercoder1534 Mar 14, 2019
cff44e3
refactor 414
fishercoder1534 Mar 15, 2019
81d4199
refactor 415
fishercoder1534 Mar 16, 2019
25b68c8
refactor 416
fishercoder1534 Mar 17, 2019
17e4d6d
add 1013
fishercoder1534 Mar 17, 2019
eef5bff
refactor 417
fishercoder1534 Mar 18, 2019
4556542
refactor 418
fishercoder1534 Mar 19, 2019
17f4f58
refactor 419
fishercoder1534 Mar 20, 2019
45345de
downgrade to java 8 for local machine JDK version
fishercoder1534 Mar 21, 2019
9431e41
refactor 420
fishercoder1534 Mar 22, 2019
5b4d2d0
minor refactor
fishercoder1534 Mar 22, 2019
1727a88
fix README.md link
fishercoder1534 Mar 23, 2019
b8b29de
fix more README.md link
fishercoder1534 Mar 23, 2019
c066806
fix more README.md link
fishercoder1534 Mar 23, 2019
31b7ecf
add 485
fishercoder1534 Mar 23, 2019
d85988d
refactor 421
fishercoder1534 Mar 23, 2019
74d4e53
add .vscode into .gitignore
fishercoder1534 Mar 23, 2019
39bf81e
add #include statements
fishercoder1534 Mar 23, 2019
2f3f186
refactor 9
fishercoder1534 Mar 23, 2019
3a546a3
add c++ solution for 9
fishercoder1534 Mar 23, 2019
b9206a8
refactor 422
fishercoder1534 Mar 24, 2019
7ee8d0d
refactor 423
fishercoder1534 Mar 25, 2019
86cd045
refactor 424
fishercoder1534 Mar 26, 2019
b50d7c9
refactor 425
fishercoder1534 Mar 27, 2019
63d6f6d
refactor 432
fishercoder1534 Mar 28, 2019
d78784b
refactor 435
fishercoder1534 Mar 29, 2019
91bb8ce
refactor 436
fishercoder1534 Mar 30, 2019
51ce8af
refactor 437
fishercoder1534 Mar 31, 2019
c2cb413
refactor 439
fishercoder1534 Apr 1, 2019
ca4b5a3
refactor 440
fishercoder1534 Apr 2, 2019
7b0a2f9
refactor 441
fishercoder1534 Apr 3, 2019
661fe56
refactor 442
fishercoder1534 Apr 4, 2019
01e133a
refactor 444
fishercoder1534 Apr 5, 2019
3dc28bd
update license
fishercoder1534 Apr 5, 2019
4f21ae0
refactor 445
fishercoder1534 Apr 6, 2019
c431845
add 1018
fishercoder1534 Apr 6, 2019
a7c71ac
refactor 1018
fishercoder1534 Apr 7, 2019
ce1cfeb
add 1021
fishercoder1534 Apr 7, 2019
fc3302f
add 1022
fishercoder1534 Apr 7, 2019
f760adb
refactor 446
fishercoder1534 Apr 9, 2019
8dbd0ab
refactor 447
fishercoder1534 Apr 10, 2019
76336bc
refactor 448
fishercoder1534 Apr 11, 2019
b90c66e
refactor 450
fishercoder1534 Apr 12, 2019
7a249ed
refactor 451
fishercoder1534 Apr 13, 2019
996a8b0
add 1009
fishercoder1534 Apr 14, 2019
ae32d87
refactor 452
fishercoder1534 Apr 14, 2019
cba0670
refactor 453
fishercoder1534 Apr 15, 2019
7fdadb1
refactor 454
fishercoder1534 Apr 16, 2019
8b914d5
refactor 455
fishercoder1534 Apr 17, 2019
e59063b
refactor 456
fishercoder1534 Apr 18, 2019
f92a373
refactor 458
fishercoder1534 Apr 19, 2019
7c7e25d
refactor 460
fishercoder1534 Apr 20, 2019
0c191fe
refactor 461
fishercoder1534 Apr 21, 2019
c4b56e2
Add solution for 1020 (#45)
havanagrawal Apr 21, 2019
4260585
add title for 1020
fishercoder1534 Apr 21, 2019
85dffcf
fix build
fishercoder1534 Apr 21, 2019
3a45e16
add 1030
fishercoder1534 Apr 21, 2019
662b720
refactor 462
fishercoder1534 Apr 22, 2019
1785d5e
refactor 463
fishercoder1534 Apr 23, 2019
54c3bc2
Add solution for 1023
havanagrawal Apr 23, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 6 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
.gradle/
gradle/
gradlew
gradlew.bat

.DS_Store
build/
out/
.idea/
*.iml
*.vscode/
7 changes: 5 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
language: java

jdk:
- oraclejdk8
- oraclejdk9

script: gradle clean build
before_script:
- chmod a+x gradlew

script: ./gradlew clean build

notifications:
email:
Expand Down
46 changes: 46 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at fishercoder@gmail.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]

[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright 2017, fishercoder1534 and contributors.
Copyright 2019, fishercoder1534 and contributors.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
1,368 changes: 764 additions & 604 deletions README.md

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,11 @@ sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
maven { url "http://repo.maven.apache.org/maven2" }
mavenCentral()
maven { url "http://repo.maven.apache.org/maven2" }
}

dependencies {
compile 'com.google.code.gson:gson:2.8.0'
testCompile group: 'junit', name: 'junit', version:'4.12'
}
40 changes: 40 additions & 0 deletions cpp/_1.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/**
1. Two Sum

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

Example:

Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

*/

#include <vector>
#include <unordered_map>
using namespace std;

class Solution {
public:
vector<int> twoSum(vector<int>& nums, int target) {
unordered_map<int, int> m;
vector<int> result;
for(int i = 0; i < nums.size(); i++){
// not found the second one
if (m.find(nums[i]) == m.end() ) {
// store the first one poisition into the second one's key
m[target - nums[i]] = i;
} else {
// found the second one
result.push_back(m[nums[i]]);
result.push_back(i);
break;
}
}
return result;
}
};
60 changes: 60 additions & 0 deletions cpp/_9.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
/**
* 9. Palindrome Number
*
* Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.

Example 1:

Input: 121
Output: true
Example 2:

Input: -121
Output: false
Explanation: From left to right, it reads -121. From right to left, it becomes 121-. Therefore it is not a palindrome.
Example 3:

Input: 10
Output: false
Explanation: Reads 01 from right to left. Therefore it is not a palindrome.
Follow up:

Coud you solve it without converting the integer to a string?
*/

class Solution1 {
/**This is a Java translation, while its Java counterpart could be accepted perfectly, this one failed due to
* Char 21: runtime error: signed integer overflow: 746384741 * 10 cannot be represented in type 'int' (solution.cpp)
*/
public:
bool isPalindrome(int x) {
if (x == 0) {
return true;
} else if (x < 0) {
return false;
}
int tmp = x;
int reverse = 0;
while (tmp != 0) {
reverse *= 10;
reverse += tmp % 10;
tmp /= 10;
}
return reverse == x;
}
};

class Solution2 {
public:
bool isPalindrome(int x) {
if (x < 0 || (x != 0 && x%10 == 0)) {
return false;
}
int sum = 0;
while (x > sum) {
sum = sum*10 + x%10;
x /= 10;
}
return (x == sum) || (x == sum/10);
}
};
31 changes: 31 additions & 0 deletions database/_578.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
--578. Get Highest Answer Rate Question
--
--Get the highest answer rate question from a table survey_log with these columns: uid, action, question_id, answer_id, q_num, timestamp.
--
--uid means user id; action has these kind of values: "show", "answer", "skip"; answer_id is not null when action column is "answer", while is null for "show" and "skip"; q_num is the numeral order of the question in current session.
--
--Write a sql query to identify the question which has the highest answer rate.
--
--Example:
--Input:
--+------+-----------+--------------+------------+-----------+------------+
--| uid | action | question_id | answer_id | q_num | timestamp |
--+------+-----------+--------------+------------+-----------+------------+
--| 5 | show | 285 | null | 1 | 123 |
--| 5 | answer | 285 | 124124 | 1 | 124 |
--| 5 | show | 369 | null | 2 | 125 |
--| 5 | skip | 369 | null | 2 | 126 |
--+------+-----------+--------------+------------+-----------+------------+
--Output:
--+-------------+
--| survey_log |
--+-------------+
--| 285 |
--+-------------+
--Explanation:
--question 285 has answer rate 1/1, while question 369 has 0/1 answer rate, so output 285.
--Note: The highest answer rate meaning is: answer number's ratio in show number in the same question.

SELECT question_id AS 'survey_log' FROM survey_log GROUP BY question_id ORDER BY
COUNT(answer_id) / COUNT(case when survey_log.action =
'show' then survey_log.action else null end) DESC LIMIT 0,1
30 changes: 30 additions & 0 deletions database/_603.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
--603. Consecutive Available Seats
--
--Several friends at a cinema ticket office would like to reserve consecutive available seats.
--Can you help to query all the consecutive available seats order by the seat_id using the following cinema table?
--
--| seat_id | free |
--|---------|------|
--| 1 | 1 |
--| 2 | 0 |
--| 3 | 1 |
--| 4 | 1 |
--| 5 | 1 |
--Your query should return the following result for the sample case above.
--| seat_id |
--|---------|
--| 3 |
--| 4 |
--| 5 |
--Note:
--The seat_id is an auto increment int, and free is bool ('1' means free, and '0' means occupied.).
--Consecutive available seats are more than 2(inclusive) seats consecutively available.

select c.seat_id from cinema c where c.free = 1
and
(
c.seat_id+1 in (select seat_id from cinema where free=1)
or
c.seat_id-1 in (select seat_id from cinema where free=1)
)
order by c.seat_id
44 changes: 44 additions & 0 deletions database/_626.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
--626. Exchange Seats
--
--Mary is a teacher in a middle school and she has a table seat storing students' names and their corresponding seat ids.
--
--The column id is continuous increment.
--Mary wants to change seats for the adjacent students.
--Can you write a SQL query to output the result for Mary?
--+---------+---------+
--| id | student |
--+---------+---------+
--| 1 | Abbot |
--| 2 | Doris |
--| 3 | Emerson |
--| 4 | Green |
--| 5 | Jeames |
--+---------+---------+
--For the sample input, the output is:
--+---------+---------+
--| id | student |
--+---------+---------+
--| 1 | Doris |
--| 2 | Abbot |
--| 3 | Green |
--| 4 | Emerson |
--| 5 | Jeames |
--+---------+---------+
--Note:
--If the number of students is odd, there is no need to change the last one's seat.


SELECT
(CASE
WHEN MOD(id, 2) != 0 AND counts != id THEN id + 1
WHEN MOD(id, 2) != 0 AND counts = id THEN id
ELSE id - 1
END) AS id,
student
FROM
seat,
(SELECT
COUNT(*) AS counts
FROM
seat) AS seat_counts
ORDER BY id ASC;
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
5 changes: 5 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-bin.zip
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
Loading