• Nov 19, 2022 •CodeCatch
0 likes • 1 view
//sample code to write 100 random ints to a file, 1 per line import java.io.PrintStream; import java.io.IOException; import java.io.File; import java.util.Random; public class WriteToFile { public static void main(String[] args) { try { PrintStream writer = new PrintStream(new File("randInts.txt")); Random r = new Random(); final int LIMIT = 100; for (int i = 0; i < LIMIT; i++) { writer.println(r.nextInt()); } writer.close(); } catch (IOException e) { System.out.println("An error occured while trying to write to the file"); } } }
• Oct 7, 2023 •AustinLeath
0 likes • 5 views
import java.util.Arrays; public class LongestIncreasingSubsequence { public int lengthOfLIS(int[] nums) { if (nums.length == 0) { return 0; } int[] dp = new int[nums.length]; Arrays.fill(dp, 1); // Initialize all elements in dp array to 1, as each element itself is a valid subsequence of length 1. int maxLength = 1; // Initialize the maximum length to 1, considering a single element as the sequence. for (int i = 1; i < nums.length; i++) { for (int j = 0; j < i; j++) { if (nums[i] > nums[j]) { dp[i] = Math.max(dp[i], dp[j] + 1); // If nums[i] is greater than nums[j], update the longest subsequence length ending at i. } } maxLength = Math.max(maxLength, dp[i]); // Update the maximum length if needed. } return maxLength; } public static void main(String[] args) { LongestIncreasingSubsequence lis = new LongestIncreasingSubsequence(); int[] nums = {10, 9, 2, 5, 3, 7, 101, 18}; int result = lis.lengthOfLIS(nums); System.out.println("Length of the Longest Increasing Subsequence: " + result); // Output: 4 } }
import javax.mail.*; import javax.mail.internet.*; import java.util.*; public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException { boolean debug = false; //Set the host smtp address Properties props = new Properties(); props.put("mail.smtp.host", "smtp.example.com"); // create some properties and get the default Session Session session = Session.getDefaultInstance(props, null); session.setDebug(debug); // create a message Message msg = new MimeMessage(session); // set the from and to address InternetAddress addressFrom = new InternetAddress(from); msg.setFrom(addressFrom); InternetAddress[] addressTo = new InternetAddress[recipients.length]; for (int i = 0; i < recipients.length; i++) { addressTo[i] = new InternetAddress(recipients[i]); } msg.setRecipients(Message.RecipientType.TO, addressTo); // Optional : You can also set your custom headers in the Email if you Want msg.addHeader("MyHeaderName", "myHeaderValue"); // Setting the Subject and Content Type msg.setSubject(subject); msg.setContent(message, "text/plain"); Transport.send(msg); }
• Oct 15, 2022 •CodeCatch
0 likes • 2 views
public class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { ListNode head = new ListNode(0); ListNode handler = head; while(l1 != null && l2 != null) { if (l1.val <= l2.val) { handler.next = l1; l1 = l1.next; } else { handler.next = l2; l2 = l2.next; } handler = handler.next; } if (l1 != null) { handler.next = l1; } else if (l2 != null) { handler.next = l2; } return head.next; } }
public class Factorial { public static void main(String[] args) { final int NUM_FACTS = 100; for(int i = 0; i < NUM_FACTS; i++) System.out.println( i + "! is " + factorial(i)); } public static int factorial(int n) { int result = 1; for(int i = 2; i <= n; i++) result *= i; return result; } }
• Feb 1, 2022 •LeifMessinger
//Leif Messinger //Solves wordle //Needs a list of wordle words, newline separated and 5 characters each import java.util.*; import java.io.File; import java.io.FileNotFoundException; class WordleSolver { public static void printPointer(int position){ for(int i = 0; i < position; ++i){ System.out.print(" "); } System.out.print("^"); } public static void main(String[] args) throws FileNotFoundException{ if(args.length < 1) return; File dictionary = new File(args[0]); Scanner sc = new Scanner(dictionary); ArrayList<String> possibleWords = new ArrayList<String>(); while(sc.hasNextLine()){ possibleWords.add(sc.nextLine()); } Scanner input = new Scanner(System.in); while(possibleWords.size() > 0){ //Choose a word out of the possible words final int randomIndex = (int)(Math.random() * possibleWords.size()); String chosenWord = possibleWords.get(randomIndex); possibleWords.remove(randomIndex); System.out.println("Is it correct?"); for(int i = 0; i < chosenWord.length(); ++i){ System.out.println(chosenWord); printPointer(i); System.out.println(" y/n?"); if(input.nextLine().toLowerCase().contains("y")){ //Filter by correct character for(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsigned if(possibleWords.get(possibleWord).charAt(i) != chosenWord.charAt(i)){ possibleWords.remove(possibleWord); } } } } System.out.println("Is it misplaced?"); //Stores a count of every letter misplaced short[] misplacedCounts = new short[('z'-'a')+1]; //Praise be the garbage collector for(int i = 0; i < chosenWord.length(); ++i){ System.out.println(chosenWord); printPointer(i); System.out.println(" y/n?"); if(input.nextLine().toLowerCase().contains("y")){ //Filter to make sure there's at least as many letters as needed ++misplacedCounts[(chosenWord.charAt(i) - 'a') - 1]; for(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsigned int count = 0; for(int j = 0; j < possibleWords.get(possibleWord).length(); ++j){ if(possibleWords.get(possibleWord).charAt(j) == chosenWord.charAt(i)) ++count; } //If there's not enough of the character that we need, then we remove that from the list of possible characters if(count < misplacedCounts[(chosenWord.charAt(i) - 'a') - 1]){ possibleWords.remove(possibleWord); } } //Also filter out words where that letter doesn't belong there for(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsigned if(possibleWords.get(possibleWord).charAt(i) == chosenWord.charAt(i)){ possibleWords.remove(possibleWord); continue; //Breaks the current word and moves on in the loop } } } } } } }